mysql主从配置,实现实时备份数据

来源:互联网 发布:c语言代码审查工具 编辑:程序博客网 时间:2024/05/22 01:53

公司使用微软的服务器实在是操蛋,每次微软服务器一更新,就把数据回到一个还原点,数据丢了几次,实在不能忍,就把自己的电脑去同步数据,去备份数据。

主从服务器前提条件mysql版本要一致,或者是同一个大版本下的小版本,不然可能二进制日志文件存储的方式不同,导致失败。

查看mysql  版本的命令:select version();

修改主服务器master: my.cnf

    在[mysqld]这段后面添加下面两行代码:
       log-bin=mysql-bin   //[必须]启用二进制日志
       server-id=222      //[必须]服务器唯一ID,默认是1,一般取IP最后一段

重启mysql 服务器:

通过命令:show master status;

+-------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+-------------------+----------+--------------+------------------+
| master-bin.000001 | 1285 | | |
+-------------------+----------+--------------+------------------+
1 row in set (0.00 sec);

出现上面的结果,配置文件修改成功了。


在Master MySQL上创建一个用户‘slave’,并允许其他Slave服务器可以通过远程访问Master,通过该用户读取二进制日志,实现数据同步。

mysql>create user slave; //创建新用户2 //repl用户必须具有REPLICATION SLAVE权限,除此之外没有必要添加不必要的权限,密码为mysql。说明一下192.168.0.%,这个配置是指明repl用户所在服务器,这里%是通配符,表示192.168.0.0-192.168.0.255的Server都可以以repl用户登陆主服务器。当然你也可以指定固定Ip。3 mysql> GRANT REPLICATION SLAVE ON *.* TO 'slave'@'192.168.0.%' IDENTIFIED BY 'mysql';

3、配置Slave从服务器(windows)

(1)找到MySQL安装文件夹修改my.ini文件,在[mysqld]下面增加下面几行代码

[mysqld]

server-id=2234

relay-log-index=slave-relay-bin.index

relay-log=slave-relay-bin

重启MySQL服务

出现了Empty set <0.02 sec>,其实是配置文件没有修改成功。这一步在执行start slave.的时候失败。

在从服务器上执行下面的命令

change master to master_host='192.168.1.104', //Master 服务器Ip
master_user='slave',
master_password='mysql',
master_log_file='master-bin.000001',//Master服务器产生的日志
master_log_pos=0;

(3)启动Slave

start slave;

,

新建一个数据库,新建一个表插入数据看看。ok了




0 0
原创粉丝点击