[译]中文注释 MariaDB my.cnf 大型服务器配置模板_MySQL
程序员文章站
2022-04-16 15:01:28
...
MariaDB
文件如下所示,请根据需要进行修改:
翻译日期: 2014年5月22日
翻译人员:铁锚
# /usr/share/mysql/my-huge.cnf # MariaDB 配置文件 示例模板(huge,巨型).## 本文件适用于专用数据库服务器, 内存为 1G-2G# 机器上主要只运行 MariaDB的大型系统 ,## MariaDB 程序会根据运行的操作系统平台查找一系列的配置文件,# 你可以将此模板配置文件拷贝到对应的位置(并重命名),# 要查看有哪些配置文件会被读取到,执行:# 'my_print_defaults --help' 并查看# Default options are read from the following files in the given order: # (--> 程序会依次读取列出的配置文件.) 这部分下面列出的文件(路径)列表.# 更多信息请参考: http://dev.mysql.com/doc/mysql/en/option-files.html## 在本文件的各个小节中,你可以使用该程序支持的所有选项.# 如果想要了解程序是否支持某个参数,# 可以使用"--help" 选项来启动该程序,查看帮助信息.# 下面一小节的配置选项由本地的所有 MySQL 客户端读取,作为默认配置[client]#password = your_passwordport = 3306socket = /var/lib/mysql/mysql.sock# 下面的各个小节,由各种应用程序来读取解析# MySQL server 配置信息[mysqld]port = 3306socket = /var/lib/mysql/mysql.sockskip-external-lockingkey_buffer_size = 384Mmax_allowed_packet = 1Mtable_open_cache = 512sort_buffer_size = 2Mread_buffer_size = 2Mread_rnd_buffer_size = 8Mmyisam_sort_buffer_size = 64Mthread_cache_size = 8query_cache_size = 32M# 并发线程数,建议为CPU核心数乘以2:CPU's*2 for thread_concurrencythread_concurrency = 8# 可以指定一个专用磁盘的路径来作为临时目录,例如 SSD#tmpdir = /tmp/# 配置此参数则不启动TCP/IP 端口 监听. # 如果所有的处理程序都只在同一台机器上连接 mysqld, 这是一个很安全的做法,# 所有同 mysqld 的交互只能通过Unix sockets 或命名管道(named pipes)完成.# 注意,使用此选项而没有开启Windows上的命名管道(named pipes),# (通过 "enable-named-pipe" 配置项) 将会导致 mysqld 不可用!#skip-networking# 主服务器配置选项 Replication Master Server (default)# 在主从复制时,需要依赖二进制日志log-bin=mysql-bin# 在整个主从复制集群中要求是 1 到 2^32 - 1 之间的唯一ID, 否则或者失败,或者大量出错日志信息.# 如果没有设置 master-host,则默认值是 1# 但如果省略了,则(master)不生效server-id = 1# 从服务器配置选项 Replication Slave (需要将 master 部分注释掉,才能使用这部分)## 要将服务器配置为从属服务器(replication slave),# 有如下两种方案可供选择 :## 1) 通过 CHANGE MASTER TO 命令 (在用户手册中有详细的描述) -#语法如下:##CHANGE MASTER TO MASTER_HOST=, MASTER_PORT= ,#MASTER_USER= , MASTER_PASSWORD= ;##你可以将 , , 替换为单引号括起来的字符串,#将 替换为 master 的端口号 (默认是 3306).##一个示例如下所示:##CHANGE MASTER TO MASTER_HOST='125.564.12.1', MASTER_PORT=3306,#MASTER_USER='joe', MASTER_PASSWORD='secret';## 或者:## 2) 设置下面的参数. 然而, 一旦你选择了这种方式,#首次启动主从复制时 (即便启动复制失败, 如错误的 master-password 密码,#导致 slave 连接不上等), slave 将会创建一个名为 master.info 的文件,#如果以后再修改本配置文件(xxx.cnf)中下面的这些参数, 则将被忽略,#并继续使用 master.info 文件的内容, unless you shutdown#除非关闭 slave 服务器, 然后删除文件 master.info 并重新启动 slaver server.#出于这个原因, 你应该不系统修改下面的相关参数参数(带 的注释部分),#而是使用 CHANGE MASTER TO (上面的方案1)# ## 在整个主从复制集群中要求是 2 到 2^32 - 1 之间的唯一ID, # 否则或者失败,或者大量出错日志信息.# 如果设置了 master-host,则默认值是 2# 但如果省略了,则不会成为 slave #server-id = 2## 此slave 需要连接的 master. - required#master-host = ## slave连接到 master 认证时需要的 username# - 用户名是必须的(也可以在连接时指定)#master-user = ## slave连接到 master 认证时需要的 password# - 密码是必须的(也可以在连接时指定)#master-password = ## master 监听的端口号# 可选 - 默认是 3306#master-port = ## 开启二进制日志, 对于slave从服务器不是必须的,但推荐开启#log-bin=mysql-bin## 二进制日志格式 —— 推荐 mixed#binlog_format=mixed# 如果只使用 InnoDB 表, 请取消下列选项的注释#innodb_data_home_dir = /var/lib/mysql#innodb_data_file_path = ibdata1:2000M;ibdata2:10M:autoextend#innodb_log_group_home_dir = /var/lib/mysql# 如果只使用 InnoDB,可以设置 .._buffer_pool_size 为物理内存的 50 - 80 %# 谨防内存使用设置得太高#innodb_buffer_pool_size = 384M# 附加缓存池大小#innodb_additional_mem_pool_size = 20M# 设置 .._log_file_size 为buffer pool size 的 25 % 左右#innodb_log_file_size = 100M# 日志缓存的大小,不要设置太大,1秒钟刷新一次#innodb_log_buffer_size = 8M# 默认1,事务提交就刷新日志到硬盘;# 设为2,刷新到操作系统缓存,但性能提高很多,设为 0 则可能丢事务.#innodb_flush_log_at_trx_commit = 1# 表死锁的超时释放时间,单位秒#innodb_lock_wait_timeout = 50[mysqldump]# 快速导出到输出流/硬盘,不在内存中缓存quick# 最大数据包限制max_allowed_packet = 16M[mysql]no-auto-rehash# 如果对 SQL不熟悉,可以将下面的注释符去掉,拒绝无where的不安全操作.#safe-updates[myisamchk]key_buffer_size = 256Msort_buffer_size = 256Mread_buffer = 2Mwrite_buffer = 2M[mysqlhotcopy]interactive-timeout