[MySQL]
prompt = [\\u@\\h][\\d]>\\_ #自定義登陸提示信息
[mysqld]
#基本設置#
user = mysql #用戶名
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 #事務自動提交設置
character_set_server = utf8mb4 #服務器字符設置
transaction_isolation = READ-COMMITTED #事務隔離級別
explicit_defaults_for_timestamp = 1 #一行數據中某些列被更新了,包含timestamp類型的列是否自動更新
max_allowed_packet = 16777216 #數據包大小
event_scheduler = 1 # 默認啓用事件功能
#鏈接#
interactive_timeout = 1800 #服務器關閉交互式鏈接前等待活動的秒數
wait_timeout = 1800 #服務器關閉非交互鏈接以前等待活動的秒數。
lock_wait_timeout = 1800 #鎖等待時間
skip_name_resolve = 1 #禁止域名解析
max_connections = 512 #最大鏈接(用戶)數
max_connect_errors = 1000000 #若是mysql服務器連續接收到了來自於同一個主機的請求,且這些連續的請求所有都沒有成功的創建鏈接就被斷開了,當這些連續的請求的累計值大於該值,mysql服務器就會阻止這臺主機後續的全部請求
#表緩存性能設置
table_open_cache = 4096 #表高速緩存大小
table_definition_cache = 4096 #緩存frm文件
table_open_cache_instances = 128 #表緩存實例數
#會話記憶設置#
read_buffer_size = 16M #讀入緩衝區大小
read_rnd_buffer_size = 32M #隨機讀緩衝大小
sort_buffer_size = 32M #排序會話的緩存大小
tmp_table_size = 64M #heap(堆積)表緩衝大小
join_buffer_size = 128M #join緩衝大小
thread_cache_size = 64 #緩存空閒線程
#日誌設置#
log_error = error.log #錯誤日誌文件
slow_query_log = 1 #開啓慢查詢日誌
slow_query_log_file = slow.log #慢查詢日誌文件
log_queries_not_using_indexes = 1 #記錄沒有使用索引的語句
log_slow_admin_statements = 1 #記錄那些慢的optimize table,analyze table和alter table語句
log_slow_slave_statements = 1 #記錄由Slave所產生的慢查詢
log_throttle_queries_not_using_indexes = 10 #每分鐘容許記錄到slow log的且未使用索引的SQL語句次數
expire_logs_days = 90 ## 提供保留二進制日誌的功能
long_query_time = 2 #SQL語句超過2s即爲慢查詢
min_examined_row_limit = 100 #要檢查的行數大於等於100時才記錄爲慢查詢
binlog-rows-query-log-events = 1 # 開啓RBR模式下SQL記錄
log-bin-trust-function-creators = 1 # 避免複製出現一些錯誤
log-slave-updates = 1 # 默認slave開啓二進制日誌
#innodb設置#
innodb_page_size = 16384 #頁大小
innodb_buffer_pool_size = 160G #緩衝池
innodb_buffer_pool_instances = 16 #內存緩衝池實例數
innodb_buffer_pool_load_at_startup = 1 #在啓動時把熱數據加載到內存中
innodb_buffer_pool_dump_at_shutdown = 1 #在關閉時把熱數據dump到本地磁盤
innodb_lru_scan_depth = 4096 #LRU列表中可用頁的數量
innodb_lock_wait_timeout = 5 #事務等待資源獲取的最長等待時間
innodb_io_capacity = 10000 #刷新髒頁的數量
innodb_io_capacity_max = 20000 #刷新髒頁的最大數量,防止用戶進程陷入刷髒
innodb_flush_method = O_DIRECT #innodb數據文件及redo log的打開、刷寫模式
innodb_file_format =Barracuda #innodb文件格式
innodb_file_format_max =Barracuda #
innodb_undo_logs = 128 #回滾段的個數
innodb_undo_tablespaces = 3 #單獨存放的undo表空間個數,該參數咱們推薦設置爲大於等於3
innodb_flush_neighbors = 0 #刷新髒頁時,檢測該頁所在區的全部頁
innodb_log_file_size = 17179869184 #重作日誌文件大小
innodb_log_files_in_group = 2 #日誌組的數量
innodb_log_buffer_size = 16777216 #日誌緩衝大小
innodb_purge_threads = 4 #purge線程數量
innodb_large_prefix = 1 #容許索引鍵的前綴超過767個字節的動態和壓縮tables
innodb_thread_concurrency = 64 #併發線程數
innodb_print_all_deadlocks = 1 #把死鎖信息打印到錯誤日誌中
innodb_strict_mode = 1 #innodb嚴格檢查模式
innodb_sort_buffer_size = 67108864 #排序緩衝大小
innodb_write_io_threads = 16 #髒頁寫的線程數
innodb_read_io_threads = 16 #讀線程數
innodb_file_per_table = 1 #將innodb表從系統共享表空間移動到獨立的.idb文件中
innodb_stats_persistent_sample_pages = 64 #控制採樣page的個數
innodb_autoinc_lock_mode = 2 #自增鎖的模式
innodb_online_alter_log_max_size = 1G #InnoDB表作在線DDL操做時所使用的臨時日誌文件的最大大小
innodb_open_files = 4096 #innodb能打開表的數據
#複製設置#
master_info_repository = TABLE #master.info信息保存在表中,默認是Myisam引擎
relay_log_info_repository = TABLE #relay.info信息保存在表中,默認是Myisam引擎
sync_binlog = 1 #怎樣刷新二進制日誌到磁盤
gtid_mode = on #開啓gtid
enforce_gtid_consistency = 1 #保證gtid安全的參數
log_slave_updates #slave將複製事件寫進本身的二進制日誌
binlog_format = ROW #binglog格式
binlog_rows_query_log_events = 1 #把用戶寫直的原生態DML操做記錄到binlog中
relay_log = relay.log #設置relay.log文件
relay_log_recovery = 1 #當slave從庫宕機後,假如relay-log損壞了,致使一部分中繼日誌沒有處理,則自動放棄全部未執行的relay-log,而且從新從master上獲取日誌
slave_skip_errors = ddl_exist_errors #定義複製過程當中從服務器能夠自動跳過的錯誤號
slave-rows-search-algorithms ='INDEX_SCAN,HASH_SCAN' #指示備庫在 apply_binlog_event時使用的算法
#半同步複製設置#
plugin_load =「validate_password.so; rpl_semi_sync_master = semisync_master.so; rpl_semi_sync_slave = semisync_slave.so」 #自動安裝插件
rpl_semi_sync_master_enabled = 1 #master啓用半同步複製
rpl_semi_sync_master_timeout = 3000 #master接受確認超時時間
rpl_semi_sync_slave_enabled = 1 #slave啓用半同步複製
#密碼插件#
validate_password_policy =strong #密碼強度檢查等級
validate-password= FORCE_PLUS_PERMANENT #永久長久使用該插件
[mysqld-5.6]
#metalock性能設置
metadata_locks_hash_instances = 64 #控制對mdl hash的分區數
[mysqld-5.7]
loose_innodb_numa_interleave = 1 #開啓BP內存NUMA分配
innodb_buffer_pool_dump_pct = 40 #轉儲每一個bp instance LRU上最熱的page的百分比
innodb_page_cleaners = 16 #page cleaner線程數
innodb_undo_log_truncate = 1 #在線Truncate undo log 表空間
innodb_max_undo_log_size = 2G #控制最大undo tablespace文件的大小,超過則嘗試truncate
innodb_purge_rseg_truncate_frequency = 128 #控制purge回滾段的頻度
#新的複製設置#
slave-parallel-type = LOGICAL_CLOCK #基於庫的並行複製方式
slave-parallel-workers = 16 #多線程並行複製
slave_preserve_commit_order = 1 #保障事務在slave上執行的順序與relay log中的順序嚴格一致
slave_transaction_retries = 128 #SQL線程在執行事務時發生InnoDB死鎖且等待超時後,slave重試的次數
#其餘更改設置#
binlog_gtid_simple_recovery = 1 #開啓簡化的GTID 恢復
log_timestamps =system #控制 error log、genera log等記錄日誌的顯示時間。
show_compatibility_56 =on #兼容information_schema.global_status
---------------------
做者:jh993627471
來源:CSDN
原文:https://blog.csdn.net/jh993627471/article/details/79111326
版權聲明:本文爲博主原創文章,轉載請附上博文連接!mysql