Mysql数据库在服务器上优化

[client]
port=3306
socket=/tmp/mysql/mysql.sock
default-character-set=utf8

[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid

[mysqld]
port=3306
user=mysql
socket=/tmp/mysql/mysql.sock
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
log-error=error.log
#允许最大连接数
max_connections=200
#允许连接失败的次数,这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10

# innodb 优化
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 缓存池
innodb_buffer_pool_size=8G
# 脏页占innodb_buffer_pool_size的比例时,触发刷脏页到磁盘
# 25%~50%
innodb_max_dirty_pages_pct=30
# 限制Innodb能打开的表的数据,如果库里的表特别多的情况,请增加这个。这个值默认是300
innodb_open_files = 500
# 此参数确定写日志文件所用的内存大小,以M为单位。缓冲区更大能提高性能,但意外的故障将会丢失数据。MySQL开发人员建议设置为1-8M之间
innodb_log_buffer_size = 2M

#开启记录慢查询 设置慢查询界定时间为1秒
long_query_time=1
slow-query-log=On
slow_query_log_file="mysql_slow_query.log"

transaction_isolation = READ-COMMITTED
character-set-server = utf8mb4
collation-server = utf8mb4_general_ci
# lower_case_table_names = 1 这个不能要

#skip-grant-tables

在linux中使用yum安装mysql 安装完成后可以通过下面的语句查询各个路径。

show global variables like "%dir%";