數(shù)據(jù)庫11總結2

  1. InnoDB 存儲引擎核心特性

5.1 種類
InnoDB
MyISAM
CSV
Memory

tokudb
myrocks

influxdb--->時序類數(shù)據(jù)庫,數(shù)據(jù)不能手工刪除,只能設置自動清理策略.

5.2 InnoDB 核心特性
事務
行鎖
熱備
MVCC
一致性hash
insert buffer
ACSR
聚簇索引
主從復制(GTID)
外鍵

5.3 事務 ACID
A: 原子性.事務的最小工作單元,不可以被拆分.不能產(chǎn)生中間狀態(tài),要么全成功,要么全失敗.
UNDO(回滾)+REDO(前滾)
C: 一致性. 在一個事務更新邏輯中,不管是處于事務更新前,中,結束.
本事務中操作的數(shù)據(jù)都終將保證一致狀態(tài),不會受到其他事務影響.
AID+鎖+MVCC等機制都是對數(shù)據(jù)的最終一致起到關鍵作用
I: 隔離性 . 隔離級別+鎖+MVCC
D: 持久性. 一旦被提交成功的數(shù)據(jù),不管宕機與否,都不會導致事務的更新丟失.
Redo

5.4 Redo 和 UNDO

5.5 MVCC 多版本并發(fā)控制
利用的是UnDO的快照.InnoDB引擎中,維護著多個版本的UnDO快照.
多事務并發(fā)環(huán)境中,互相不影響.只要多事務之間更新的數(shù)據(jù)鎖不互相沖突.事務是可以并發(fā)執(zhí)行的.

特性:

  1. 在RR級別下的,一致性快照讀是由MVCC保證的.在同一個事務生命周期內(nèi),獲取的一定是同一個版本數(shù)據(jù).
  2. 對于讀操作,實現(xiàn)的是非鎖定快照讀. 讀的操作不加鎖.

5.6 隔離級別
RC : 事務并發(fā)讀會更高一些. 防止臟讀. 會出現(xiàn) 不可重復讀和幻讀
RR : 可以防止臟讀和不可重復讀(一致性快照讀.),配合GAP和Next-lock實現(xiàn)防止幻讀

5.7 鎖機制
RL
GL
NL
MDL ----> DDL DCL
TL ----> DDL DCL
FTWRL ---> 全局鎖 ----> XBK備份非InnoDB

IS
S select xxx from xxx lock in shared mode;
IX
X select xxx from xxx for update;

5.8 碎片整理
alter table t1 engine=innodb
Pt-archiver
optimize table t1;

5.8 表空間遷移

create table t1
alter table t1 discard tablespace
alter table t1 import tablespace

5.9 自適應hash
加速索引讀取性能, 索引的索引

5.10 insert buffer
為了大量insert業(yè)務場景設計.

  1. 日志管理

6.1 log_error
錯誤 ----> [ERROR]
啟動
宕機
主從

工作狀態(tài)

6.2 binlog 二進制日志
如何截取二進制日志
show master status ; ----> 正在使用的二進制日志
show binlog events in 'xxxx' ----> 看事件
mysqlbinlog --start-position --stop-position xxxx.000009 > /backup/bin.sql
mysqlbinlog --include-gtids --exclude-gtids --skip-gtids > /backup/bin.sql

set sql_log_bin=0;
source
set sql_log_bin=1;

binlog_format :
SBR 語句模式
RBR 行模式
MBR 混合模式

滾動
flush logs
重啟
MySQLadmin flush-logs
達到1G

備份時會應用
binlog_server: mysqlbinlog

清理
expire_logs_days=15

參數(shù):
innodb_flush_log_at_trx_commit=1 ----> redo 刷寫策略
innodb_flush_method=O_direct
sync_binlog=1 ----> binlog 刷寫策略

6.3 slowlog
slow_query_log=1 # 慢日志開關
slow_query_log_file # 慢日志位置
long_query_time # 慢日志記錄條件(時間)
log_queries_not_using_indexes # 慢日志記錄條件(不走索引的)

mysqldumpslow
mysqlsla
pt-query-digest+Anemometer 圖形化展示慢日志

  1. 備份恢復
    7.1 mysqldump
    -A -B --master-data=2 --single-transaction --triggers -R -E --max_allowed_packet=64M

7.2 xbk
備份過程:
(1) ckpt,記錄LSN
(2) 備份innodb表
(3) 非InnoDB表,開啟FTWRL(Flush Tbales with read lock)全局讀鎖,拷貝文件,自動解鎖
(4) 并將備份過程中redo日志進行備份,記錄結束LSN
(5) 增量都是基于上次last_lsn,檢查所有變化的數(shù)據(jù)頁進行備份
備份策略:
1. full+inc+binlog
2. full+binlog

恢復過程:
單獨全備:
1. prepare 全備 : --apply-log
2. cp
全備+增量:
1. prepare 基礎全備 : --apply-log --redo-only
2. 增量到基礎全備,prepare增量: --apply-log --redo-only
3. 最后增量到基礎全備,prepare增量: --apply-log
4. prepare 終極全備 : --apply-log
5. 恢復全備
This option should be used when preparing the base full
backup and when merging all incrementals except the last one.

  1. 主從復制
    8.1 主從復制搭建
    傳統(tǒng)
    gtid
    8.2 主從復制原理

8.3 主從監(jiān)控
show slave status\G

8.4 主從故障分析

8.5 主從延時

8.6 演變
延時從:
SQL線程延時一段時間,回放日志.
怎么用? 解決邏輯損壞.

半同步概念 :

過濾復制配置:

  1. MHA高可用
    9.1 搭建
    9.2 原理
    9.3 故障處理

  2. 高可用配合讀寫分離

  3. 分布式架構-MyCat

  4. 優(yōu)化

  5. NoSQL

==========================================
MHA 故障環(huán)境修復:

  1. 修復主從
    51/53節(jié)點:
    mysql -S /tmp/mysql.sock -e "show slave status \G"|grep Running:

2.主庫修復vip
52節(jié)點:
[root@db02 ~]# ifconfig eth0:1 10.0.0.55/24

說明: 刪除vip?
ifconfig eth0:1 down

  1. 修復binlog_server
    53節(jié)點:
    [root@db03 ~]# cd /data/mysql/binlog/
    [root@db03 /data/mysql/binlog]# rm -rf *
    [root@db03 /data/mysql/binlog]# mysqlbinlog -R --host=10.0.0.52 --user=mha --password=mha --raw --stop-never mysql-bin.000001 &

  2. 檢查配置文件
    53節(jié)點:
    [root@db03 /data/mysql/binlog]# vim /etc/mha/app1.cnf

  3. 檢查SSH和主從
    53節(jié)點:
    masterha_check_ssh --conf=/etc/mha/app1.cnf
    masterha_check_repl --conf=/etc/mha/app1.cnf

  4. 啟動MHA
    53節(jié)點:
    nohup masterha_manager --conf=/etc/mha/app1.cnf --remove_dead_master_conf --ignore_last_failover < /dev/null > /var/log/mha/app1/manager.log 2>&1 &

================================
讀寫分離

  1. 安裝
    略.
    2.配置
    2.1 軟件路徑
    [root@db03 ~]# cd /usr/local/mysql-proxy/
    [root@db03 /usr/local/mysql-proxy]# ll
    總用量 0
    drwxr-xr-x 2 root root 75 11月 26 16:54 bin
    drwxr-xr-x 2 root root 22 11月 26 16:54 conf
    drwxr-xr-x 3 root root 331 11月 26 16:54 lib
    drwxr-xr-x 2 root root 6 12月 17 2014 log
    [root@db03 /usr/local/mysql-proxy]#
    2.2 環(huán)境變量設置
    [root@db03 /usr/local/mysql-proxy]# vim /etc/profile
    export PATH=/usr/local/mysql-proxy/bin:$PATH

source /etc/profile

2.3 配置文件
[root@db03 /usr/local/mysql-proxy/conf]# cd /usr/local/mysql-proxy/conf
[root@db03 /usr/local/mysql-proxy/conf]# vim oldguo.cnf
[mysql-proxy]
admin-username = user
admin-password = pwd
proxy-backend-addresses = 10.0.0.55:3306
proxy-read-only-backend-addresses = 10.0.0.51:3306,10.0.0.53:3306
pwds = repl:3yb5jEku5h4=,mha:O2jBXONX098=
daemon = true
keepalive = true
event-threads = 8
log-level = message
log-path = /usr/local/mysql-proxy/log
sql-log=ON
proxy-address = 0.0.0.0:33060
admin-address = 0.0.0.0:2345
charset=utf8

2.4 啟動atlas
mysql-proxyd oldguo start

2.5 測試讀寫分離
讀:
[root@db03 ~]# mysql -umha -pmha -h10.0.0.53 -P33060
db03 [(none)]>select @@server_id;

寫:
db03 [(none)]>begin;
db03 [(none)]>select @@server_id;
db03 [(none)]>commit;

  1. Atlas 的管理(在線)
    db03 [(none)]>select * from help;
    +----------------------------+---------------------------------------------------------+
    | command | description |
    +----------------------------+---------------------------------------------------------+
    | SELECT * FROM help | shows this help |
    | SELECT * FROM backends | lists the backends and their state |
    | SET OFFLINE backend_id | offline backend server,backend_id is backend_ndx's id |
    | SET ONLINE backend_id | online backend server, ... | | ADD MASTERbackend | example: "add master 127.0.0.1:3306", ... |
    | ADD SLAVE backend | example: "add slave 127.0.0.1:3306", ... | | REMOVE BACKENDbackend_id | example: "remove backend 1", ... |
    | SELECT * FROM clients | lists the clients |
    | ADD CLIENT client | example: "add client 192.168.1.2", ... | | REMOVE CLIENTclient | example: "remove client 192.168.1.2", ... |
    | SELECT * FROM pwds | lists the pwds |
    | ADD PWD pwd | example: "add pwd user:raw_password", ... | | ADD ENPWDpwd | example: "add enpwd user:encrypted_password", ... |
    | REMOVE PWD $pwd | example: "remove pwd user", ... |
    | SAVE CONFIG | save the backends to config file |
    | SELECT VERSION | display the version of Atlas |
    +----------------------------+---------------------------------------------------------+
    16 rows in set (0.00 sec)

3.1 幫助查看
SELECT * FROM help

3.2 查看后端節(jié)點
db03 [(none)]>SELECT * FROM backends ;
+-------------+----------------+-------+------+
| backend_ndx | address | state | type |
+-------------+----------------+-------+------+
| 1 | 10.0.0.55:3306 | up | rw |
| 2 | 10.0.0.51:3306 | up | ro |
| 3 | 10.0.0.53:3306 | up | ro |
+-------------+----------------+-------+------+
3 rows in set (0.00 sec)

3.3 在線offline/online一個節(jié)點
db03 [(none)]>SET OFFLINE 3;
+-------------+----------------+---------+------+
| backend_ndx | address | state | type |
+-------------+----------------+---------+------+
| 3 | 10.0.0.53:3306 | offline | ro |
+-------------+----------------+---------+------+
1 row in set (0.00 sec)

db03 [(none)]>SELECT * FROM backends ;
+-------------+----------------+---------+------+
| backend_ndx | address | state | type |
+-------------+----------------+---------+------+
| 1 | 10.0.0.55:3306 | up | rw |
| 2 | 10.0.0.51:3306 | up | ro |
| 3 | 10.0.0.53:3306 | offline | ro |
+-------------+----------------+---------+------+
3 rows in set (0.00 sec)

db03 [(none)]>
db03 [(none)]>SET ONLINE 3;
+-------------+----------------+---------+------+
| backend_ndx | address | state | type |
+-------------+----------------+---------+------+
| 3 | 10.0.0.53:3306 | unknown | ro |
+-------------+----------------+---------+------+
1 row in set (0.00 sec)

3.4 添加/刪除節(jié)點
REMOVE BACKEND 2;
REMOVE BACKEND 1;
ADD SLAVE 10.0.0.51:3306
ADD master 10.0.0.55:3306

3.5 開用戶
3.5.1. MySQL主庫建用戶,授權
db02 [(none)]>grant all on . to root@'localhost' identified by '123';

3.5.2. Atlas 添加用戶
ADD PWD root:123

3.6 永久保存配置到文件
db03 [(none)]>save config;

  1. MyCAT基礎架構準備
    2.1 環(huán)境準備:
    兩臺虛擬機 db01 db02
    每臺創(chuàng)建四個mysql實例:3307 3308 3309 3310
    2.2 刪除歷史環(huán)境:
    pkill mysqld
    rm -rf /data/330*
    mv /etc/my.cnf /etc/my.cnf.bak
    2.3 創(chuàng)建相關目錄初始化數(shù)據(jù)
    mkdir /data/33{07..10}/data -p
    mysqld --initialize-insecure --user=mysql --datadir=/data/3307/data --basedir=/usr/local/mysql
    mysqld --initialize-insecure --user=mysql --datadir=/data/3308/data --basedir=/usr/local/mysql
    mysqld --initialize-insecure --user=mysql --datadir=/data/3309/data --basedir=/usr/local/mysql
    mysqld --initialize-insecure --user=mysql --datadir=/data/3310/data --basedir=/usr/local/mysql
    2.4 準備配置文件和啟動腳本
    ========db01==============
    cat >/data/3307/my.cnf<<EOF
    [mysqld]
    basedir=/usr/local/mysql
    datadir=/data/3307/data
    socket=/data/3307/mysql.sock
    port=3307
    log-error=/data/3307/mysql.log
    log_bin=/data/3307/mysql-bin
    binlog_format=row
    skip-name-resolve
    server-id=7
    gtid-mode=on
    enforce-gtid-consistency=true
    log-slave-updates=1
    EOF

cat >/data/3308/my.cnf<<EOF
[mysqld]
basedir=/usr/local/mysql
datadir=/data/3308/data
port=3308
socket=/data/3308/mysql.sock
log-error=/data/3308/mysql.log
log_bin=/data/3308/mysql-bin
binlog_format=row
skip-name-resolve
server-id=8
gtid-mode=on
enforce-gtid-consistency=true
log-slave-updates=1
EOF

cat >/data/3309/my.cnf<<EOF
[mysqld]
basedir=/usr/local/mysql
datadir=/data/3309/data
socket=/data/3309/mysql.sock
port=3309
log-error=/data/3309/mysql.log
log_bin=/data/3309/mysql-bin
binlog_format=row
skip-name-resolve
server-id=9
gtid-mode=on
enforce-gtid-consistency=true
log-slave-updates=1
EOF
cat >/data/3310/my.cnf<<EOF
[mysqld]
basedir=/usr/local/mysql
datadir=/data/3310/data
socket=/data/3310/mysql.sock
port=3310
log-error=/data/3310/mysql.log
log_bin=/data/3310/mysql-bin
binlog_format=row
skip-name-resolve
server-id=10
gtid-mode=on
enforce-gtid-consistency=true
log-slave-updates=1
EOF

cat >/etc/systemd/system/mysqld3307.service<<EOF
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/data/3307/my.cnf
LimitNOFILE = 5000
EOF

cat >/etc/systemd/system/mysqld3308.service<<EOF
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/data/3308/my.cnf
LimitNOFILE = 5000
EOF

cat >/etc/systemd/system/mysqld3309.service<<EOF
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/data/3309/my.cnf
LimitNOFILE = 5000
EOF
cat >/etc/systemd/system/mysqld3310.service<<EOF
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target

[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/data/3310/my.cnf
LimitNOFILE = 5000
EOF
========db02===============
cat >/data/3307/my.cnf<<EOF
[mysqld]
basedir=/usr/local/mysql
datadir=/data/3307/data
socket=/data/3307/mysql.sock
port=3307
log-error=/data/3307/mysql.log
log_bin=/data/3307/mysql-bin
binlog_format=row
skip-name-resolve
server-id=17
gtid-mode=on
enforce-gtid-consistency=true
log-slave-updates=1
EOF
cat >/data/3308/my.cnf<<EOF
[mysqld]
basedir=/usr/local/mysql
datadir=/data/3308/data
port=3308
socket=/data/3308/mysql.sock
log-error=/data/3308/mysql.log
log_bin=/data/3308/mysql-bin
binlog_format=row
skip-name-resolve
server-id=18
gtid-mode=on
enforce-gtid-consistency=true
log-slave-updates=1
EOF
cat >/data/3309/my.cnf<<EOF
[mysqld]
basedir=/usr/local/mysql
datadir=/data/3309/data
socket=/data/3309/mysql.sock
port=3309
log-error=/data/3309/mysql.log
log_bin=/data/3309/mysql-bin
binlog_format=row
skip-name-resolve
server-id=19
gtid-mode=on
enforce-gtid-consistency=true
log-slave-updates=1
EOF

cat >/data/3310/my.cnf<<EOF
[mysqld]
basedir=/usr/local/mysql
datadir=/data/3310/data
socket=/data/3310/mysql.sock
port=3310
log-error=/data/3310/mysql.log
log_bin=/data/3310/mysql-bin
binlog_format=row
skip-name-resolve
server-id=20
gtid-mode=on
enforce-gtid-consistency=true
log-slave-updates=1
EOF

cat >/etc/systemd/system/mysqld3307.service<<EOF
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/data/3307/my.cnf
LimitNOFILE = 5000
EOF

cat >/etc/systemd/system/mysqld3308.service<<EOF
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/data/3308/my.cnf
LimitNOFILE = 5000
EOF

cat >/etc/systemd/system/mysqld3309.service<<EOF
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/data/3309/my.cnf
LimitNOFILE = 5000
EOF
cat >/etc/systemd/system/mysqld3310.service<<EOF
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/data/3310/my.cnf
LimitNOFILE = 5000
EOF
2.5 修改權限弥锄,啟動多實例
chown -R mysql.mysql /data/*
systemctl start mysqld3307
systemctl start mysqld3308
systemctl start mysqld3309
systemctl start mysqld3310

mysql -S /data/3307/mysql.sock -e "show variables like 'server_id'"
mysql -S /data/3308/mysql.sock -e "show variables like 'server_id'"
mysql -S /data/3309/mysql.sock -e "show variables like 'server_id'"
mysql -S /data/3310/mysql.sock -e "show variables like 'server_id'"
2.6 節(jié)點主從規(guī)劃
箭頭指向誰是主庫
10.0.0.51:3307 <-----> 10.0.0.52:3307
10.0.0.51:3309 ------> 10.0.0.51:3307
10.0.0.52:3309 ------> 10.0.0.52:3307

10.0.0.52:3308  <----->    10.0.0.51:3308
10.0.0.52:3310  ----->     10.0.0.52:3308
10.0.0.51:3310  ----->     10.0.0.51:3308

2.7 分片規(guī)劃
shard1:
Master:10.0.0.51:3307
slave1:10.0.0.51:3309
Standby Master:10.0.0.52:3307
slave2:10.0.0.52:3309
shard2:
Master:10.0.0.52:3308
slave1:10.0.0.52:3310
Standby Master:10.0.0.51:3308
slave2:10.0.0.51:3310
2.8 開始配置
shard1
10.0.0.51:3307 <-----> 10.0.0.52:3307
db02
mysql -S /data/3307/mysql.sock -e "grant replication slave on . to repl@'10.0.0.%' identified by '123';"
mysql -S /data/3307/mysql.sock -e "grant all on . to root@'10.0.0.%' identified by '123' with grant option;"
db01
mysql -S /data/3307/mysql.sock -e "CHANGE MASTER TO MASTER_HOST='10.0.0.52', MASTER_PORT=3307, MASTER_AUTO_POSITION=1, MASTER_USER='repl', MASTER_PASSWORD='123';"
mysql -S /data/3307/mysql.sock -e "start slave;"
mysql -S /data/3307/mysql.sock -e "show slave status\G"
db02
mysql -S /data/3307/mysql.sock -e "CHANGE MASTER TO MASTER_HOST='10.0.0.51', MASTER_PORT=3307, MASTER_AUTO_POSITION=1, MASTER_USER='repl', MASTER_PASSWORD='123';"
mysql -S /data/3307/mysql.sock -e "start slave;"
mysql -S /data/3307/mysql.sock -e "show slave status\G"
10.0.0.51:3309 ------> 10.0.0.51:3307
db01
mysql -S /data/3309/mysql.sock -e "CHANGE MASTER TO MASTER_HOST='10.0.0.51', MASTER_PORT=3307, MASTER_AUTO_POSITION=1, MASTER_USER='repl', MASTER_PASSWORD='123';"
mysql -S /data/3309/mysql.sock -e "start slave;"
mysql -S /data/3309/mysql.sock -e "show slave status\G"
10.0.0.52:3309 ------> 10.0.0.52:3307
db02
mysql -S /data/3309/mysql.sock -e "CHANGE MASTER TO MASTER_HOST='10.0.0.52', MASTER_PORT=3307, MASTER_AUTO_POSITION=1, MASTER_USER='repl', MASTER_PASSWORD='123';"
mysql -S /data/3309/mysql.sock -e "start slave;"
mysql -S /data/3309/mysql.sock -e "show slave status\G"
shard2
10.0.0.52:3308 <-----> 10.0.0.51:3308
db01
mysql -S /data/3308/mysql.sock -e "grant replication slave on . to repl@'10.0.0.%' identified by '123';"
mysql -S /data/3308/mysql.sock -e "grant all on . to root@'10.0.0.%' identified by '123' with grant option;"
db02
mysql -S /data/3308/mysql.sock -e "CHANGE MASTER TO MASTER_HOST='10.0.0.51', MASTER_PORT=3308, MASTER_AUTO_POSITION=1, MASTER_USER='repl', MASTER_PASSWORD='123';"
mysql -S /data/3308/mysql.sock -e "start slave;"
mysql -S /data/3308/mysql.sock -e "show slave status\G"
db01
mysql -S /data/3308/mysql.sock -e "CHANGE MASTER TO MASTER_HOST='10.0.0.52', MASTER_PORT=3308, MASTER_AUTO_POSITION=1, MASTER_USER='repl', MASTER_PASSWORD='123';"
mysql -S /data/3308/mysql.sock -e "start slave;"
mysql -S /data/3308/mysql.sock -e "show slave status\G"
10.0.0.52:3310 -----> 10.0.0.52:3308
db02
mysql -S /data/3310/mysql.sock -e "CHANGE MASTER TO MASTER_HOST='10.0.0.52', MASTER_PORT=3308, MASTER_AUTO_POSITION=1, MASTER_USER='repl', MASTER_PASSWORD='123';"
mysql -S /data/3310/mysql.sock -e "start slave;"
mysql -S /data/3310/mysql.sock -e "show slave status\G"
10.0.0.51:3310 -----> 10.0.0.51:3308
db01
mysql -S /data/3310/mysql.sock -e "CHANGE MASTER TO MASTER_HOST='10.0.0.51', MASTER_PORT=3308, MASTER_AUTO_POSITION=1, MASTER_USER='repl', MASTER_PASSWORD='123';"
mysql -S /data/3310/mysql.sock -e "start slave;"
mysql -S /data/3310/mysql.sock -e "show slave status\G"
2.9 檢測主從狀態(tài)
mysql -S /data/3307/mysql.sock -e "show slave status\G"|grep Yes
mysql -S /data/3308/mysql.sock -e "show slave status\G"|grep Yes
mysql -S /data/3309/mysql.sock -e "show slave status\G"|grep Yes
mysql -S /data/3310/mysql.sock -e "show slave status\G"|grep Yes
注:如果中間出現(xiàn)錯誤,在每個節(jié)點進行執(zhí)行以下命令
mysql -S /data/3307/mysql.sock -e "stop slave; reset slave all;"
mysql -S /data/3308/mysql.sock -e "stop slave; reset slave all;"
mysql -S /data/3309/mysql.sock -e "stop slave; reset slave all;"
mysql -S /data/3310/mysql.sock -e "stop slave; reset slave all;"

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末闲孤,一起剝皮案震驚了整個濱河市豪治,隨后出現(xiàn)的幾起案子洞拨,更是在濱河造成了極大的恐慌,老刑警劉巖负拟,帶你破解...
    沈念sama閱讀 207,113評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件烦衣,死亡現(xiàn)場離奇詭異,居然都是意外死亡掩浙,警方通過查閱死者的電腦和手機花吟,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評論 2 381
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來厨姚,“玉大人衅澈,你說我怎么就攤上這事∶剑” “怎么了今布?”我有些...
    開封第一講書人閱讀 153,340評論 0 344
  • 文/不壞的土叔 我叫張陵经备,是天一觀的道長。 經(jīng)常有香客問我部默,道長侵蒙,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,449評論 1 279
  • 正文 為了忘掉前任傅蹂,我火速辦了婚禮纷闺,結果婚禮上,老公的妹妹穿的比我還像新娘贬派。我一直安慰自己急但,他們只是感情好,可當我...
    茶點故事閱讀 64,445評論 5 374
  • 文/花漫 我一把揭開白布搞乏。 她就那樣靜靜地躺著波桩,像睡著了一般。 火紅的嫁衣襯著肌膚如雪请敦。 梳的紋絲不亂的頭發(fā)上镐躲,一...
    開封第一講書人閱讀 49,166評論 1 284
  • 那天,我揣著相機與錄音侍筛,去河邊找鬼萤皂。 笑死,一個胖子當著我的面吹牛匣椰,可吹牛的內(nèi)容都是我干的裆熙。 我是一名探鬼主播,決...
    沈念sama閱讀 38,442評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼禽笑,長吁一口氣:“原來是場噩夢啊……” “哼入录!你這毒婦竟也來了?” 一聲冷哼從身側響起佳镜,我...
    開封第一講書人閱讀 37,105評論 0 261
  • 序言:老撾萬榮一對情侶失蹤僚稿,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后蟀伸,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蚀同,經(jīng)...
    沈念sama閱讀 43,601評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,066評論 2 325
  • 正文 我和宋清朗相戀三年啊掏,在試婚紗的時候發(fā)現(xiàn)自己被綠了蠢络。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,161評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡迟蜜,死狀恐怖刹孔,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情小泉,我是刑警寧澤芦疏,帶...
    沈念sama閱讀 33,792評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站微姊,受9級特大地震影響酸茴,放射性物質發(fā)生泄漏。R本人自食惡果不足惜兢交,卻給世界環(huán)境...
    茶點故事閱讀 39,351評論 3 307
  • 文/蒙蒙 一薪捍、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧配喳,春花似錦酪穿、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,352評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至涧团,卻和暖如春只磷,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背泌绣。 一陣腳步聲響...
    開封第一講書人閱讀 31,584評論 1 261
  • 我被黑心中介騙來泰國打工钮追, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人阿迈。 一個月前我還...
    沈念sama閱讀 45,618評論 2 355
  • 正文 我出身青樓元媚,卻偏偏與公主長得像,于是被迫代替她去往敵國和親苗沧。 傳聞我的和親對象是個殘疾皇子刊棕,可洞房花燭夜當晚...
    茶點故事閱讀 42,916評論 2 344

推薦閱讀更多精彩內(nèi)容

  • 1. MySQL體系結構與管理 1.1 MySQL C/S結構介紹 *** 兩種連接方式: TCP/IP:mysq...
    山有木兮_8adb閱讀 383評論 0 0
  • 1. 體系結構 1.1 C/S(客戶端/服務端)模型介紹 TCP/IP方式(遠程、本地): mysql -uroo...
    極光01閱讀 555評論 0 0
  • 1.MySQL C/S模型 Server : mysqldClient :socket : 僅本地連接使用tcp/...
    我要笑閱讀 399評論 0 1
  • 1.4 邏輯結構 庫 ---> 表 ----》數(shù)據(jù)行(記錄)崎页,字段(列)鞠绰,屬性(列屬性,列約束飒焦,列的數(shù)據(jù)類型等蜈膨,表...
    張鑫澤_2109閱讀 494評論 0 0
  • 奧尼爾揭離開湖人原因:一山難容二虎 摘要:奧尼爾在節(jié)目中表示2000-2001賽季的湖人是最好的總冠軍球隊。 虎撲...
    prudenceli閱讀 150評論 0 0