mysql master slave 主从安装

mysql 版本: http://www.mysql.com/get/Downloads/MySQL-5.5/MySQL-server-5.5.29-1.rhel5.x86_64.rpm.

 

master:   vi/etc/my.cnf

add content:

log-bin = master-bin
log-bin-index = master-bin.index

在 master 上创建 复制用户:

run shell: create user repl_user;

run shell: grant replication slave on *.* to repl_user identified by 'Zjw11763'; 

 

slave: vi/etc/my.cnf

add content:

server-id       = 2
relay-log       = slave-relay-bin
relay-log-index = slave-relay-bin.index

##// server-id should be different;

这个时候 master slave 数据库都是一致的,先查看 master 上当前 日志情况

在 master 上 执行 shell:show master status\G;

 返回值:

*************************** 1. row ***************************
            File: master-bin.000004
        Position: 1369
    Binlog_Do_DB:
Binlog_Ignore_DB:
1 row in set (0.00 sec)

ERROR:
No query specified

 

从 master 上最新位置开始同步数据

change master to

master_host='vm-1bd6-3d6d.nam.nsroot.net',

master_port=3309,

master_user='repl_user',

master_password='Zjw11763',

master_log_file='master-bin.000004',

master_log_pos=1369;

 

然后启动 slave,

start slave;

 

 

关于 指向 日志位置问题 也可以用方法二(master slave 数据一致的情况下):

 

stop slave;

reset slave;

reset master;

start slave;

 

#stop slave;

#set GLOBAL SQL_SLAVE_SKIP_COUNTER=1;

#start slave;


数据库导出:

mysqldump -A -h 'vm-1bd6-3d6d.nam.nsroot.net' -P 3309 -p  --master-data=1> /home/jz54495/BACKUP.sql

##// 加上 master-data=1 在dump 文件中有自动将位置 指向 master 最新位置的 语句 不需要自己重新 change master to ..............

 恢复:

mysql --host='vm-a2eb-5b5d.nam.nsroot.net' -u root -p -P 3309 </home/jz54495/BACKUP.sql

 

 

如果hive使用此主从 复制模式选择 混合模式


 

发布了26 篇原创文章 · 获赞 3 · 访问量 4万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章