Linux系統 MySQL-5.6 主從

mysql數據庫版本mysql

1.選擇 GA版本,穩定5.5或5.6而且在6個月以上linux

2.先後幾個月無大bug修復或無大量bug修復版本sql

建立用戶名數據庫

# groupadd mysqlsocket

# useradd -r -g mysql mysqlide

# mv mysql-5.6.43-linux-glibc2.12-x86_64 /usr/local/mysql測試

數據庫安裝orm

# /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/server

拷貝文件blog

# cp -r /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf

# cp -r /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld

# cp -r /usr/local/mysql/bin/mysql /usr/bin/

修改權限

# chown -R mysql.mysql /usr/local/mysql

# mkdir /var/lib/mysql

# chown -R mysql:mysql /var/lib/mysql

# chmod +x /etc/rc.d/init.d/mysqld

加入到系統服務

# chkconfig --add mysqld

# systemctl start mysqld

# systemctl enable mysqld

# /sbin/chkconfig mysqld on  

在主庫給從庫受權

建立用戶添加權限

# CREATE USER 'rep1'@'192.168.2.242' IDENTIFIED BY '123456';

# GRANT REPLICATION SLAVE ON *.* TO 'rep1'@'192.168.2.242';

# GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY  '123456' WITH GRANT OPTION;

刷新權限,立馬生效

# FLUSH PRIVILEGES;

 

查看並記錄 File和Position字段

# show master status;

從庫

# CHANGE MASTER TO MASTER_HOST='192.168.2.243',MASTER_PORT=3306,MASTER_USER='rep1',MASTER_PASSWORD='123456',MASTER_LOG_FILE='mysql-bin.000006',MASTER_LOG_POS=199;

#啓動從複製功能

# START SLAVE; 

#中止從複製功能的命令

# STOP SLAVE; 

#重置從複製功能的配置,會清除 master.info 和 relay-log.info 兩個文件

# RESET SLAVE;

顯示從庫複製狀態

# SHOW SLAVE STATUS\G 

 

 

數據庫調優

1.刪除測試庫

# drop database test;

2.建立用戶給予權限

# CREATE USER 'icomp'@'%' IDENTIFIED BY 'icomp';

# GRANT ALL ON *.* TO 'icomp'@'%';

3.修改用戶密碼

# update user set password=password('root') where user='root';

4.查看用戶權限

# select user,host,password from mysql.user;

# show grants for 'rep1'@'192.168.2.208';

5.查看MySQL運行狀況

# SHOW STATUS;

6.查看INNODB數據庫引擎運行狀態

# SHOW ENGINE INNODB STATUS;

7.查看當前正在進行的進程,對於有鎖表等狀況的排查頗有用處

默認顯示前100條 

# SHOW PROCESSLIST;

顯示全部

# SHOW FULL PROCESSLIST;

8.查看MySQL的配置參數

# SHOW VARIABLES;

9.查看當前已經被打開的表列表

# SHOW OPEN TABLES;

10.備份數據庫

# mysqldump -uroot -proot --all-databases >./BackupName.sql

11.恢復數據庫

# mysql -u root -proot < BackupName.sql

12.查看用戶權限

# show grants for 'mengqi'@'%';

13.給予用戶權限

# grant insert,update,delete,select,create, alter on *.* to mengqi@"%" identified by "123456";

# grant create routine on *.* to mengqi@"%" identified by "123456";

14.回收用戶權限

#revoke all privileges on *.* from mengqi@"%";

 

配置文件my.cnf

[mysql]
no-auto-rehash
#default-character-set=utf8
socket=/var/lib/mysql/mysql.sock
[mysqld]
#innodb
user=mysql
port = 3306
#設置mysql的安裝目錄
basedir=/usr/local/mysql
socket=/var/lib/mysql/mysql.sock
#設置mysql數據庫的數據的存放目錄
datadir=/usr/local/mysql/data
innodb_buffer_pool_size=6G
innodb_log_file_size=2G
innodb_log_buffer_size=8M
innodb_flush_log_at_trx_commit=2
innodb_file_per_table=1
innodb_file_io_threads=4
innodb_flush_method=O_DIRECT
innodb_io_capacity=2000
innodb_io_capacity_max=6000
innodb_lru_scan_depth=2000
innodb_thread_concurrency = 0
innodb_additional_mem_pool_size=16M
innodb_autoinc_lock_mode = 2
# Binary log/replication
log-bin=mysql-bin
server-id=1
#不一樣步的數據庫
binlog-ignore-db=information_schema
binlog-ignore-db=performance_schema
binlog-ignore-db=mysql
#指定須要同步的數據庫
binlog-do-db=test

sync_binlog=1sync_relay_log=1relay-log-info-repository=TABLEmaster-info-repository=TABLEexpire_logs_days=7binlog_format=ROWtransaction-isolation=READ-COMMITTED#cachetmp_table_size=512Mcharacter-set-server=utf8collation-server=utf8_general_ciskip-external-lockingback_log=1024key_buffer_size=1024Mthread_stack=256kread_buffer_size=8Mthread_cache_size=64query_cache_size=128Mmax_heap_table_size=256Mquery_cache_type=1binlog_cache_size = 2Mtable_open_cache=128thread_cache=1024thread_concurrency=8wait_timeout=86400interactive_timeout=7200join_buffer_size = 1024Msort_buffer_size = 8Mread_rnd_buffer_size = 8M#connectmax-connect-errors=100000max-connections=1000##explicit_defaults_for_timestamp=truesql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABL

相關文章
相關標籤/搜索