MySQL 配制
MySQL 的配置主要涉及到几个重要的配置文件和参数,这些文件通常位于 MySQL 的安装目录下,一般是 /etc/mysql/ 或者 /etc/mysql/mysql.conf.d/。
MySQL 配置参数主要包含4部分,分别为[client]、[mysql]、[mysqld]、[mysqld_safe]。
[client]部分
[client] port = 3306 socket = /tmp/mysql.sock default_character_set = utf8
port连接数据库的端口,默认为3306;
socket 本地连接的socket套接字
default_character_set设置字符集,通常使用 uft8 即可
[mysql]部分
[mysql] no-auto-rehash prompt = '\u@\h [\d]> ' max_allowed_packet = 16M
no-auto-rehash关闭自动补全 SQL 命令功能
prompt = '\u@\h [\d]> ' 此为修改 mysql 提示符内容的变量,通过配置可以显示登入的主机地址,登陆用户名,当前时间,当前数据库等信息。
max_allowed_packet 数据包或生成的/中间的字符串的最大大小(以字节为单位)数据包消息缓冲区使用net_buffer_length中的值进行初始化,但可以增长到max_allowed_packet个字节,设置为最大BLOB的最大值(1024的倍数)。
[mysqld]部分
[mysqld] port = 3306 socket = /tmp/mysql.sock datadir = /www/server/data default_storage_engine = InnoDB performance_schema_max_table_instances = 400 table_definition_cache = 400 key_buffer_size = 32M max_allowed_packet = 100G table_open_cache = 128 sort_buffer_size = 768K net_buffer_length = 4K read_buffer_size = 768K read_rnd_buffer_size = 256K myisam_sort_buffer_size = 8M thread_cache_size = 16 query_cache_size = 16M tmp_table_size = 32M sql-mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
port 服务端监听端口
socket 客户端程序和服务器之间的本地通讯指定一个套接字文件
datadir 存储数据库文件的目录
default_storage_engine 数据存储引擎,InnoDB 或者 MyISAM
performance_schema_max_table_instances 设置性能模式下能够同时跟踪的表实例的最大数量
table_definition_cache 控制服务器在内存中缓存表定义(table definitions)的数量
key_buffer_size 用于设置 MyISAM 存储引擎索引缓冲区的大小。这个参数仅对 MyISAM 表有效,因为其他存储引擎如 InnoDB 使用不同的缓冲池(例如 innodb_buffer_pool_size)来管理索引和数据的缓存
max_allowed_packet 用于控制单个数据库包或查询中允许的最大数据包大小。这个参数通常用于限制单次传输或查询中可以发送或接收的数据量,包括插入语句、更新语句或者客户端向服务器发送的任何数据包
table_open_cache 控制服务器缓存打开表的数量。这个缓存允许 MySQL 服务器在内存中保持对表定义的缓存,以提高访问表的速度
[mysqld_safe]
[mysqld_safe] user = mysql open_files_limit = 8192 log-error = error.log
open_files_limit是指打开的文件的最大数量,这个限制对于有效处理数据库操作非常重要,特别是在具有高并发或大型数据库的系统中
log-error用于指定MySQL服务器错误日志的文件路径和名称。这个错误日志记录了MySQL服务器在运行过程中遇到的各种错误信息和警告信息