[client] #默認連接端口 port = 3306 #用于本地連接的socket套接字,一般linux下有用 socket = /data/MySQLdata/3306/mysql.sock #客戶端編碼 default-character-set = utf8mb4 [mysqld] #MySQL監聽端口,一般默認為3306 port = 3306 #為MySQL客戶端程序和服務器之間的本地通訊指定一個套接字文件,一般linux下有用 socket = /data/mysqldata/3307/mysql.sock #pid文件所在目錄 pid-file = /data/mysqldata/3307/mysql.pid #使用該目錄作為根目錄(安裝目錄) basedir = /usr/local/mysql-5.7.11 #數據文件存放的目錄 datadir = /data/mysqldata/3307/data #MySQL存放臨時文件的目錄 tmpdir = /data/mysqldata/3307/tmp #服務端默認編碼(數據庫級別) character_set_server = utf8mb4 #服務端默認的比對規則,排序規則 collation_server = utf8mb4_bin #初始字符集 init-connect = 'SET NAMES utf8mb4' #MySQL綁定IP #bind-address = 127.0.0.1 #是否開啟計劃 1開啟 0 關閉 event_scheduler=1 #開啟全文索引 #ft_min_word_len = 1 #開啟慢查詢 slow_query_log = 1 #超過的時間為1s; long_query_time = 1 #慢查詢日志 slow_query_log_file = /data/mysql/mysql-slow.log #創建函數 開啟LOGBIN的情況下 log_bin_trust_function_creators=1 #最大連接數,最大值16384 max_connections = 1895 #當此值設置為10時,某一客戶端連接失敗10次,無條件強制阻止此客戶端連接。 max_connect_errors = 6000 #mysql打開最大文件數 open_files_limit = 65535 #表打開緩存數 table_open_cache = 1024 #查詢報文最大尺寸 max_allowed_packet = 500M #最大表堆棧大小 max_heap_table_size = 8M #臨時表大小 tmp_table_size = 128M #連接排隊的堆棧 back_log = 1024 #讀緩沖區大小 read_buffer_size = 2M #隨機讀緩沖區大小 read_rnd_buffer_size = 8M #排序緩沖區大小 sort_buffer_size = 8M #連接緩沖區大小 join_buffer_size = 8M #索引塊的緩沖區大小,對MyISAM表性能影響最大 key_buffer_size = 256M #開啟查詢緩存。這個變量有三個取值:0,1,2,分別代表了off、on、demand。 query_cache_type = 0 #查詢緩存大小 query_cache_size = 0 #查詢緩存限制 query_cache_limit = 2M #區分大小寫 0:區分大小寫,1:不區分大小寫 lower_case_table_names = 1 #跳過域名解析 skip-name-resolve #跳過外部鎖定,External-locking用于多進程條件下為MyISAM數據表進行鎖定 skip-external-locking #連接線程池 thread_cache_size = 64 #非交互的連接超時秒數 wait_timeout=10000 #交互的連接超時秒數 interactive_timeout=10000 #sql_mode,定義了mysql應該支持的sql語法,數據校驗等! #sql_mode = 'PIPES_AS_CONCAT,ANSI_QUOTES,IGNORE_SPACE,NO_KEY_OPTIONS,NO_TABLE_OPTIONS,NO_FIELD_OPTIONS,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' #默認數據庫引擎 default_storage_engine = InnoDB innodb_file_per_table = 1 #打開的表的數量 innodb_open_files = 500 #高速緩沖數據和索引內存緩沖大小 innodb_buffer_pool_size = 1024M #寫io線程 innodb_write_io_threads = 4 #讀io線程 innodb_read_io_threads = 4 innodb_thread_concurrency = 0 #開始碎片回收線程 innodb_purge_threads = 1 innodb_flush_log_at_trx_commit = 2 #日志緩沖區大小 innodb_log_buffer_size = 2M #日志大小 innodb_log_file_size = 32M #日志組數量 innodb_log_files_in_group = 3 innodb_max_dirty_pages_pct = 90 #事務鎖超時時間 innodb_lock_wait_timeout = 120 #單獨指定數據文件的路徑與大小 innodb_data_file_path = ibdata1:1G:autoextend #集群ID server-id = 1 #開啟日志 log_bin = mysql-bin #開啟二進制日志功能,binlog數據位置 log-bin = /data/mysqldata/3307/binlog/mysql-bin log-bin-index = /data/mysqldata/3307/binlog/mysql-bin.index #日志模式:基于SQL語句的復制(statement-based replication, SBR),基于行的復制(row-based replication, RBR),混合模式復制(mixed-based replication, MBR)。 binlog_format = mixed #日志過期時間 expire_logs_days = 7 #日志緩存大小 binlog_cache_size = 1M # 為每個session 最大可分配的內存,在事務過程中用來存儲二進制日志的緩存。 #max_binlog_cache_size = 102400 #最大日志大小 max_binlog_size = 512M #強制恢復數據庫模式 innodb_force_recovery = 6 解釋: innodb_force_recovery可以設置為1-6,大的數字包含前面所有數字的影響。 具體數字對應的含義: 1-----(SRVFORCEIGNORECORRUPT):忽略檢查到的corrupt頁。 2-----(SRVFORCENOBACKGROUND):阻止主線程的運行,如主線程需要執行full purge操作,會導致crash。 3-----(SRVFORCENOTRXUNDO):不執行事務回滾操作。 4-----(SRVFORCENOIBUFMERGE):不執行插入緩沖的合并操作。 5-----(SRVFORCENOUNDOLOGSCAN):不查看重做日志,InnoDB存儲引擎會將未提交的事務視為已提交。 6-----(SRVFORCENOLOG_REDO):不執行前滾的操作。 [mysqldump] #它強制 mysqldump 從服務器查詢取得記錄直接輸出而不是取得所有記錄后將它們緩存到內存中 quick #限制server接受的數據包大小;指代mysql服務器端和客戶端在一次傳送數據包的過程當中數據包的大小 max_allowed_packet = 512M #TCP/IP和套接字通信緩沖區大小,創建長度達net_buffer_length的行 net_buffer_length = 16384 [mysql] #auto-rehash是自動補全的意思 auto-rehash #isamchk數據檢測恢復工具 [isamchk] key_buffer = 256M sort_buffer_size = 256M read_buffer = 2M write_buffer = 2M #使用myisamchk實用程序來獲得有關你的數據庫桌表的信息、檢查和修復他們或優化他們 [myisamchk] key_buffer = 256M sort_buffer_size = 256M read_buffer = 2M write_buffer = 2M [mysqlhotcopy] #mysqlhotcopy使用lock tables、flush tables和cp或scp來快速備份數據庫.它是備份數據庫或單個表最快的途徑,完全屬于物理備份,但只能用于備份MyISAM存儲引擎和運行在數據庫目錄所在的機器上. interactive-timeout