MySQL对libaio库有依赖关系,如果没有这个包,数据目录初始化和接下来的服务启动会失败
[root@iZm5ehy7gff0kpxx0zeypqZ mysql.5.7]# yum install -y libaio
创建软件安装目录
[root@iZm5ehy7gff0kpxx0zeypqZ service]# mkdir /service/mysql.5.7
下载软件包
解压安装包
[root@iZm5ehy7gff0kpxx0zeypqZ service]# cd mysql5.7
[root@iZm5ehy7gff0kpxx0zeypqZ mysql.5.7]#tar -zxvf Percona-Server-5.7.18-15-Linux.x86_64.ssl101.tar.gz
[root@iZm5ehy7gff0kpxx0zeypqZ mysql.5.7]# mv Percona-Server-5.7.18-15-Linux.x86_64.ssl101/* .
[root@iZm5ehy7gff0kpxx0zeypqZ mysql.5.7]#rmdir Percona-Server-5.7.18-15-Linux.x86_64.ssl101
[root@iZm5ehy7gff0kpxx0zeypqZ mysql.5.7]#chown -R mysql.mysql mysql.5.7
创建mysql用户
[root@iZm5ehy7gff0kpxx0zeypqZ mysql.5.7]#groupadd mysql
[root@iZm5ehy7gff0kpxx0zeypqZ mysql.5.7]#useradd mysql -g mysql -s /sbin/nologin
创建数据目录和日志目录
[root@iZm5ehy7gff0kpxx0zeypqZ mysql.5.7]#mkdir /mysql_data_57
[root@iZm5ehy7gff0kpxx0zeypqZ mysql.5.7]#mkdir /mysql_log_57
[root@iZm5ehy7gff0kpxx0zeypqZ mysql.5.7]#chmod 750 /mysql_data_57/
[root@iZm5ehy7gff0kpxx0zeypqZ mysql.5.7]#chown -R mysql.mysql /mysql_data_57/
[root@iZm5ehy7gff0kpxx0zeypqZ mysql.5.7]#chown -R mysql.mysql /mysql_log_57/
编辑配置文件
[root@iZm5ehy7gff0kpxx0zeypqZ mysql.5.7]# mkdir etc
[root@iZm5ehy7gff0kpxx0zeypqZ mysql.5.7]#vim /etc/my.cnf
[client]
port = 3307
socket = /mysql_data_57/mysql.sock
[mysqld]
#MySQL Server layer basic setting
server-id = 1
port = 3307
socket = /mysql_data_57/mysql.sock
#MySQL Server layer directory setting
basedir = /service/mysql.5.7
datadir = /mysql_data_57
tmpdir = /mysql_data_57
#MySQL Server layer connection setting
max_connections = 900
#MySQL Server layer connection setting
max_connections = 900
max_connect_errors = 100000
max_allowed_packet = 16M
back_log = 50
#MySQL Server layer binlog setting
log_bin_trust_function_creators = on
expire_logs_days = 1
binlog_cache_size = 1M
log-bin = /mysql_log_57/mysql-bin
binlog_format = mixed
#MySQL Server layer memory management setting
tmp_table_size = 256M
max_heap_table_size = 256M
read_buffer_size = 2M
read_rnd_buffer_size = 16M
sort_buffer_size = 8M
join_buffer_size = 16M
query_cache_size = 16M
thread_stack = 192K
#MySQL Server layer transaction management setting
transaction_isolation = READ-COMMITTED
autocommit = ON
#MySQL Server layer log related setting
log_warnings = 2 ##this value have been the default value in MySQL 5.7
slow_query_log = ON
long_query_time = 2
slow_query_log_file = /mysql_log_57/mysql-slow.log
#log_queries_not_using_indexes = 1
#MySQL Server layer other behaviour setting
sql_mode = PIPES_AS_CONCAT,IGNORE_SPACE,STRICT_TRANS_TABLES
event_scheduler = ON
lower_case_table_names = 1
explicit_defaults_for_timestamp = ON
default-storage-engine = INNODB
explicit_defaults_for_timestamp = ON
default-storage-engine = INNODB
##ft_min_word_len = 4
# Statistic
# userstat = ON
# thread_statistics = ON
# End statistics
# MyISAM Engine related setting
key_buffer_size = 256M
bulk_insert_buffer_size = 64M
myisam_sort_buffer_size = 128M
myisam_max_sort_file_size = 10G
myisam_repair_threads = 1
#myisam_recover
#InnoDB Engine related setting
#InnoDB memory management related setting
innodb_buffer_pool_size = 10g
innodb_max_dirty_pages_pct = 90
innodb_sync_array_size = 16
innodb_max_dirty_pages_pct = 90
innodb_sync_array_size = 16
#table open cache related
table_open_cache = 4096
table_open_cache_instances = 16
#innodb_additional_mem_pool_size = 16M ##This variable have been removed MySQL 5.7
#innodb_numa_interleave = 1 ##Only work with Percona 5.6.27 and later
##InnoDB engine I/O related setting
innodb_write_io_threads = 8
innodb_read_io_threads = 8
innodb_flush_method = O_DIRECT
#InnoDB engine File management related setting
innodb_data_file_path = ibdata1:12M:autoextend #10M-->12M, 12M is default values, it is meaningless to set it to 10M
innodb_file_per_table = 1 #this value have been the default value in MySQL 5.7
innodb_data_file_path = ibdata1:12M:autoextend #10M-->12M, 12M is default values, it is meaningless to set it to 10M
innodb_file_per_table = 1 #this value have been the default value in MySQL 5.7
innodb_file_format = Barracuda #this value have been the default value in MySQL 5.7
#InnoDB engine undo log related setting
innodb_undo_directory