1、启动时报错<Error> Application: DB::Exception: There is no profile 'default' in configuration file.
2021.08.07 15:05:30.719723 [ 1 ] {} <Information> : Starting ClickHouse 19.4.5.35 with revision 54416 2021.08.07 15:05:30.723015 [ 1 ] {} <Information> Application: starting up 2021.08.07 15:05:30.725499 [ 1 ] {} <Trace> Application: Will mlockall to prevent executable memory from being paged out. It may take a few seconds. 2021.08.07 15:05:30.765438 [ 1 ] {} <Trace> Application: The memory map of clickhouse executable has been mlock'ed 2021.08.07 15:05:30.765680 [ 1 ] {} <Debug> Application: rlimit on number of file descriptors is 128000 2021.08.07 15:05:30.765701 [ 1 ] {} <Debug> Application: Initializing DateLUT. 2021.08.07 15:05:30.765718 [ 1 ] {} <Trace> Application: Initialized DateLUT with time zone `PRC'. 2021.08.07 15:05:30.769868 [ 1 ] {} <Debug> ConfigReloader: Loading config `/etc/clickhouse-server/config.xml' 2021.08.07 15:05:30.773574 [ 1 ] {} <Information> Application: Shutting down storages. 2021.08.07 15:05:30.773606 [ 1 ] {} <Debug> Application: Shutted down storages. 2021.08.07 15:05:30.774008 [ 1 ] {} <Debug> Application: Destroyed global context. 2021.08.07 15:05:30.774584 [ 1 ] {} <Error> Application: DB::Exception: There is no profile 'default' in configuration file. 2021.08.07 15:05:30.774617 [ 1 ] {} <Information> Application: shutting down 2021.08.07 15:05:30.774630 [ 1 ] {} <Debug> Application: Uninitializing subsystem: Logging Subsystem 2021.08.07 15:05:30.774735 [ 2 ] {} <Information> BaseDaemon: Stop SignalListener thread
这是因为在config.xml中设置了<default_profile>default</default_profile> 但是并没有在 config.xml中指定 <users_config>users.xml</users_config> 这个标签元素,导致
default_profile无法和users.xml 中的default profile 关联起来。
config.xml 配置参考:
<?xml version=""1.0""?> <yandex> <!--日志--> <logger> <level>error</level> <log>/data/clickhouse/logs/clickhouse.log</log> <errorlog>/data/clickhouse/logs/error.log</errorlog> <size>500M</size> <count>5</count> </logger> <!--本地节点信息--> <http_port>8123</http_port> <tcp_port>9000</tcp_port> <interserver_http_port>9009</interserver_http_port> <interserver_http_host>本机IP</interserver_http_host> <!--本机域名或IP--> <!--本地配置--> <listen_host>0.0.0.0</listen_host> <max_connections>4096</max_connections> <receive_timeout>800</receive_timeout> <send_timeout>800</send_timeout> <keep_alive_timeout>300</keep_alive_timeout> <max_concurrent_queries>1000</max_concurrent_queries> <uncompressed_cache_size>8589934592</uncompressed_cache_size> <mark_cache_size>5368709120</mark_cache_size> <path>/data/clickhouse/</path> <tmp_path>/data/clickhouse/tmp/</tmp_path> <users_config>users.xml</users_config> <default_profile>default</default_profile> <log_queries>1</log_queries> <default_database>default</default_database> <!--集群相关配置--> <remote_servers incl=""clickhouse_remote_servers"" /> <zookeeper incl=""zookeeper-servers"" optional=""true"" /> <macros incl=""macros"" optional=""true"" /> <builtin_dictionaries_reload_interval>3600</builtin_dictionaries_reload_interval> <max_session_timeout>3600</max_session_timeout> <default_session_timeout>300</default_session_timeout> <max_table_size_to_drop>0</max_table_size_to_drop> <merge_tree> <parts_to_delay_insert>300</parts_to_delay_insert> <parts_to_throw_insert>600</parts_to_throw_insert> <max_delay_to_insert>2</max_delay_to_insert> </merge_tree> <max_table_size_to_drop>0</max_table_size_to_drop> <max_partition_size_to_drop>0</max_partition_size_to_drop> <distributed_ddl> <!-- Path in ZooKeeper to queue with DDL queries --> <path>/clickhouse/task_queue/ddl</path> </distributed_ddl> <include_from>/etc/clickhouse-server/metrika.xml</include_from> </yandex>
user.xml配置参考:
<?xml version="1.0"?> <yandex> <profiles> <default> <max_memory_usage>10000000000</max_memory_usage> <use_uncompressed_cache>0</use_uncompressed_cache> <load_balancing>random</load_balancing> </default> <readonly> <max_memory_usage>10000000000</max_memory_usage> <use_uncompressed_cache>0</use_uncompressed_cache> <load_balancing>random</load_balancing> <readonly>1</readonly> </readonly> </profiles> <quotas> <!-- Name of quota. --> <default> <interval> <queries>0</queries> <errors>0</errors> <result_rows>0</result_rows> <read_rows>0</read_rows> <execution_time>0</execution_time> </interval> </default> </quotas> <users> <default> <!-- PASSWORD=$(base64 < /dev/urandom | head -c8); echo "$PASSWORD"; echo -n "$PASSWORD" | sha256sum | tr -d '-' --> <!-- password UHXQQmhb --> <password_sha256_hex>65b84b497ef843f7c9629251a64e307caecbf7327975af4d18f83261239e1460</password_sha256_hex> <networks> <ip>::/0</ip> </networks> <profile>default</profile> <quota>default</quota> </default> <ck> <password_sha256_hex>65b84b497ef843f7c9629251a64e307caecbf7327975af4d18f83261239e1460</password_sha256_hex> <networks> <ip>::/0</ip> </networks> <profile>readonly</profile> <quota>default</quota> </ck> </users> </yandex>
metrika.xml 集群信息配置文件参考:
<yandex> <!--ck集群节点--> <clickhouse_remote_servers> <clickhouse_cluster_name> <!--分片1--> <shard> <internal_replication>true</internal_replication> <replica> <host>192.68.1.1</host> <port>9000</port> <user>default</user> <password>password</password> </replica> <!--复制集1--> <replica> <host>192.68.1.2</host> <port>9000</port> <user>default</user> <password>password</password> </replica> </shard> <!--分片2--> <shard> <internal_replication>true</internal_replication> <replica> <host>192.68.1.3</host> <port>9000</port> <user>default</user> <password>password</password> </replica> <!--复制集2--> <replica> <host>192.68.1.4</host> <port>9000</port> <user>default</user> <password>password</password> </replica> </shard> </clickhouse_cluster_name> </clickhouse_remote_servers> <!--zookeeper相关配置--> <zookeeper-servers> <node index=""""1""""> <host>192.68.1.5</host> <port>2181</port> </node> <node index=""""2""""> <host>192.68.1.6</host> <port>2181</port> </node> <node index=""""3""""> <host>192.68.1.7</host> <port>2181</port> </node> </zookeeper-servers> <macros> <layer>01</layer> <shard>01</shard> <!--分片号--> <replica>192.68.1.1</replica> <!--当前节点IP--> </macros> <networks> <ip>::/0</ip> </networks> <!--压缩相关配置--> <clickhouse_compression> <case> <min_part_size>10000000000</min_part_size> <min_part_size_ratio>0.01</min_part_size_ratio> <method>lz4</method> <!--压缩算法lz4压缩比zstd快, 更占磁盘--> </case> </clickhouse_compression> </yandex>
2、ubuntu上安装时,可以从如下国内网站下载相关的lib:https://mirrors.tuna.tsinghua.edu.cn/clickhouse/deb/stable/main/
3、如何修改时区 config.xml
4、对外开放连接:取消<listen_host>::</listen_host> 注释( config.xml)
5、报错:<Error> Application: DB::Exception: Effective user of the process (root) does not match the owner of the data (clickhouse). Run under 'sudo -u clickhouse'.
更改目录/etc/clickhouse-server: chown -R clickhouse:clickhouse /etc/clickhouse-server
更改目录/var/log/clickhouse-server:chown -R clickhouse:clickhouse /var/log/clickhouse-server
使用
sudo -u clickhouse clickhouse-server --config-file=/etc/clickhouse-server/config.xml & 进行启动。
6、参考资料:
如何搭建ClickHouse 分布式高可用集群搭建:https://www.bbsmax.com/A/ke5j0nNozr/
clickhouse配置文件说明:https://www.cnblogs.com/gentlescholar/p/15043234.html