Mysql主从安装配置_落英缤纷

Mysql主从安装配置_落英缤纷

环境:

主从服务器上的MySQL数据库版本同为5.1.73

主机IP:192.168.0.1

从机IP:192.168.0.2

一. MySQL主服务器配置

1.编辑配置文件/etc/my.cnf

# 确保有如下两行

server-id = 1

log-bin=mysql-bin

# binlog-do-db=mysql #需要备份的数据库名,如果备份多个数据库,重复设置这个选项即可

# binlog-ignore-db=mysql #不需要备份的数据库名,如果备份多个数据库,重复设置这个选项即可

# log-slave-updates #这个参数一定要加上,否则不会给更新的记录些到二进制文件里

# slave-skip-errors #是跳过错误,继续执行复制操作

2.建立用户

mysql> grant replication slave on *.* to ‘slave’@’192.168.0.2’ identified by ‘bak_passwd’;

mysql> select distinct concat(‘user: ”’,user,”’@”’,host,”’;’) as query from mysql.user; // 查看所有用户

mysql> flush privileges;

 

3.锁主库表

mysql> flush tables with read lock;

4.显示主库信息

记录File和Position,从库设置将会用到

=====================

mysql> SHOW MASTER STATUS;

+——————+———-+————–+——————+

| File | Position | Binlog_do_db | Binlog_ignore_db |

+——————+———-+————–+——————+

| mysql-bin.000001 | 106 | | |

+——————+———-+————–+——————+

5.另开一个终端,打包主库

cd /usr/local/mysql #mysql库目录
tar zcvf var.tar.gz var
或者/usr/bin/mysqldump -u root -p –opt –flush-logs –all-database > /root/allbak.sql
scp ~/allbak.sql root@192.168.0.2:/root/
mysql -uroot -p < allbak.sql
mysql> slave stop;
mysql> change master to master_host=’192.168.0.1′,master_user=’slave’,master_password=’bak_passwd’,master_log_file=’mysql-bin.000001′,master_log_pos=106;

6、启动SLAVE服务

mysql> slave start;

7、查看SLAVE状态

mysql> show slave status\G;

其中 Slave_IO_Running 和 Slave_SQL_Running 两列的值都为 “Yes”,表明 Slave 的 I/O 和 SQL 线程

8、解锁主库表

mysql> unlock tables; //主服务器上

到此主从库搭建成功。可以在主库上插入数据测试同步是否正常。

2.3 验证主从复制效果

主服务器上的操作

在主服务器上创建数据库first_db

mysql> create database first_db;

Query Ok, 1 row affected (0.01 sec)

在主服务器上创建表first_tb

mysql> use first_db;

mysql> create table first_tb(id int(3),name char(10));

Query Ok, 1 row affected (0.00 sec)

在主服务器上的表first_tb中插入记录

mysql> insert into first_tb values (001,’myself’);

在从服务器上查看

mysql> show databases;

=============================

+——————–+

| Database |

+——————–+

| information_schema |

| first_db |

| mysql |

| performance_schema |

| test |

+——————–+

5 rows in set (0.01 sec)

=============================

数据库first_db已经自动生成

mysql> use first_db;

Database chaged

mysql> show tables;

=============================

+——————–+

| Tables_in_first_db |

+——————–+

| first_tb |

+——————–+

1 row in set (0.02 sec)

=============================

数据库表first_tb也已经自动创建

mysql> select * from first_tb;

=============================

+——+——+

| id | name |

+——+——+

| 1 | myself |

+——+——+

1 rows in set (0.00 sec)

=============================

记录也已经存在

由此,整个MySQL主从复制的过程就完成了。

落英缤纷 20140313

 

Print Friendly

发表评论

电子邮件地址不会被公开。 必填项已用*标注