创建binlog存放目录(此举是为了下面在文件中配置error.log和binlog相关参数)
[root@localhost data]# cd /
[root@localhost /]# mkdir data
[root@localhost /]# cd data
[root@localhost data]# mkdir mysql
[root@localhost data]# cd mysql
[root@localhost mysql]# mkdir log
[root@localhost mysql]# cd log
[root@localhost log]# touch error.log
将/data/mysql/log整个目录及其子目录、子文件加入mysql用户组
[root@localhost mysql]# chown -R mysql:mysql /data/mysql/log
修改/etc/文件
[root@localhost mysql]# vi /etc/
配置如下:
[mysqld]
# basic settings #
user = mysql
port = 3306
sql_mode = "STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER"
autocommit = 1
server-id = 1
character_set_server = utf8mb4
transaction_isolation = READ-COMMITTED
lower_case_table_names = 1
explicit_defaults_for_timestamp = 1
max_allowed_packet = 16777216
event_scheduler = 1
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
socket = /tmp/
pid-file = /usr/local/mysql/data/
# connection #
interactive_timeout = 1800
wait_timeout = 1800
lock_wait_timeout = 1800
skip_name_resolve = 1
max_connections = 1000
max_connect_errors = 1000000
# table cache performance settings #
table_open_cache = 4096
table_definition_cache = 4096
table_open_cache_instances = 128
# log settings #
log_error = /data/mysql/log/error.log
slow_query_log_file = /data/mysql/log/
log-bin = /data/mysql/log/mysql-bin
relay_log = mysql-relay-bin
general_log_file =
slow_query_log = 1
log_queries_not_using_indexes = 1
log_slow_admin_statements = 1
log_slow_slave_statements = 1
log_throttle_queries_not_using_indexes = 10
long_query_time = 1
min_examined_row_limit = 100
binlog-rows-query-log-events = 1
log-bin-trust-function-creators = 1
expire-logs-days = 7
log-slave-updates = 1
# replication settings #
master_info_repository = TABLE
relay_log_info_repository = TABLE
sync_binlog = 1
gtid_mode = on
enforce_gtid_consistency = 1
log_slave_updates
binlog_format = ROW
binlog_rows_query_log_events = 1
relay_log =
relay_log_recovery = 1
slave_skip_errors = ddl_exist_errors
slave-rows-search-algorithms = 'INDEX_SCAN,HASH_SCAN'
replicate-ignore-db = mysql
replicate-ignore-db = information_schema
replicate-ignore-db = performance_schema
replicate-ignore-db = sys
[mysqld-5.7]
# new innodb settings #
loose_innodb_numa_interleave = 1
innodb_buffer_pool_dump_pct = 40
innodb_page_cleaners = 16
innodb_undo_log_truncate = 1
innodb_max_undo_log_size = 2G
innodb_purge_rseg_truncate_frequency = 128
# new replication settings #
slave-parallel-type = LOGICAL_CLOCK
slave-parallel-workers = 16
slave_preserve_commit_order = 1
slave_transaction_retries = 128
# other change settings #
binlog_gtid_simple_recovery = 1
log_timestamps = system
show_compatibility_56 = on