绝对经典,看了必会 linux中部署mysql主从同步示例详解( 二 )

绝对经典,看了必会 linux中部署mysql主从同步示例详解

文章插图
 
执行刷新数据库:
flush privileges;7、授权成功后,查看主从状态
mysql> show master status;
绝对经典,看了必会 linux中部署mysql主从同步示例详解

文章插图
 
8、查看二进制日志文件
[root@hadoop4 ~]# find / -name mysql-bin.000001
绝对经典,看了必会 linux中部署mysql主从同步示例详解

文章插图
 
可以看到二进制日志文件在路径:/var/lib/mysql/mysql-bin.000001下
[root@hadoop4 ~]# ll /var/lib/mysql
绝对经典,看了必会 linux中部署mysql主从同步示例详解

文章插图
 
9、备份要同步的数据库
1)、数据库备份语法
表结构+数据
mysqldump -u用户名 -p 数据库名 > 数据库名.sql只导出表结构
mysqldump -u用户名 -p -d 数据库名 > 数据库名.sql如示例:#/usr/local/mysql/bin/mysqldump -uroot -p -d abc > abc.sql执行备份命令前,一定要先到mysql的运行路径下,再执行一下命令,如果不知道可以通过find命令查询:
[root@hadoop4 ~]# find / -name mysqldump本系统中mysql数据库导出目录如下:
/usr/bin/mysqldump
绝对经典,看了必会 linux中部署mysql主从同步示例详解

文章插图
 
2)、执行数据库导出命令
[root@hadoop4 ~]# /usr/bin/mysqldump -uroot -p TONGBU > /usr/mytest/TONGBU.sql
绝对经典,看了必会 linux中部署mysql主从同步示例详解

文章插图
 
10、把导出的数据库文件拷贝到slave(192.168.254.136)服务器上
[root@hadoop4 mytest]# src TONGBU.sql root@192.168.254.136:/usr/mytest/
绝对经典,看了必会 linux中部署mysql主从同步示例详解

文章插图
 
slave(192.168.254.136)服务器上拷贝成功:
绝对经典,看了必会 linux中部署mysql主从同步示例详解

文章插图
 
11、slave(192.168.254.136)数据库导入备份脚本
1)、数据库导入语法
使用 mysql 命令导入数据库格式如下:
mysql -u用户名 -p 数据库名 < 数据库名.sql 示例:# mysql -uroot -p123456 < abc.sql使用 source 命令导入
先登录到 mysql 中,并创建一个空的数据库:
mysql> create database abc; # 创建数据库mysql> use abc; # 使用已创建的数据库 mysql> set names utf8; # 设置编码mysql> source /home/abc/abc.sql # 导入备份数据库2)、slave(192.168.254.136)数据库具体导入步骤
登录数据库,并创建数据库
[root@localhost mytest]# mysql -u root -pmysql> create database TONGBU;Query OK, 1 row affected (0.03 sec)mysql> use TONGBU;Database changedmysql> set names utf8;Query OK, 0 rows affected (0.00 sec)
绝对经典,看了必会 linux中部署mysql主从同步示例详解

文章插图
 
执行导入命令如下:
[root@localhost mytest]# mysql -uroot -p TONGBU < /usr/mytest/TONGBU.sql
绝对经典,看了必会 linux中部署mysql主从同步示例详解

文章插图
 
slave服务器配置流程1、设置slave数据库的my.cnf配置文件
[root@localhost mytest]# vi /etc/my.cnf
绝对经典,看了必会 linux中部署mysql主从同步示例详解

文章插图
 
具体配置:
[mysqld]server-id=2log-bin=mysql-bin-slave #从主机中可要可不要replicate-do-db=TONGBUreplicate-ignore-db=mysqlslave-skip-errors = allmaster-host=192.168.254.132 #指定主服务器IP地址master-user=slave #指定定在主服务器上可以进行同步的用户名master-password=123456 #密码#master-port=3306master-connect-retry=60 #断点重新连接时间提示:
[mysqld]
server-id=2 #设置从服务器id,必须于主服务器不同
log-bin=mysql-bin #启动MySQ二进制日志系统
replicate-do-db=liting #需要同步的数据库名 。如果不指明同步哪些库,就去掉这行,表示所有库的同步(除了ignore忽略的库) 。
replicate-ignore-db=mysql #不同步test数据库
slave-skip-errors = all #跳过所有的错误,继续执行复制操作
当只针对某些库的某张表进行同步时,如下,只同步liting库的haha表和test库的heihei表:
replicate-do-db = liting
replicate-wild-do-table = liting.haha //当只同步几个或少数表时,可以这样设置 。注意这要跟上面的库指定配合使用;
replicate-do-db = test
replicate-wild-do-table = test.heihei //如果同步的库的表比较多时,就不能这样一一指定了,就把这个选项配置去掉,直接根据指定的库进行同步 。


推荐阅读