文件如下所示,请根据需要进行修改:
翻译日期: 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_password port = 3306 socket = /var/lib/mysql/mysql.sock # 下面的各个小节,由各种应用程序来读取解析 # MySQL server 配置信息 [mysqld] port = 3306 socket = /var/lib/mysql/mysql.sock skip-external-locking key_buffer_size = 384M max_allowed_packet = 1M table_open_cache = 512 sort_buffer_size = 2M read_buffer_size = 2M read_rnd_buffer_size = 8M myisam_sort_buffer_size = 64M thread_cache_size = 8 query_cache_size = 32M # 并发线程数,建议为CPU核心数乘以2: CPU's*2 for thread_concurrency thread_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=<host>, MASTER_PORT=<port>, # MASTER_USER=<user>, MASTER_PASSWORD=<password> ; # # 你可以将 <host>, <user>, <password> 替换为单引号括起来的字符串, # 将 <port> 替换为 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 文件的内容, # 除非关闭 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 = <hostname> # # slave连接到 master 认证时需要的 username # - 用户名是必须的(也可以在连接时指定) #master-user = <username> # # slave连接到 master 认证时需要的 password # - 密码是必须的(也可以在连接时指定) #master-password = <password> # # master 监听的端口号 # 可选 - 默认是 3306 #master-port = <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 = 256M sort_buffer_size = 256M read_buffer = 2M write_buffer = 2M [mysqlhotcopy] interactive-timeout