博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ubuntu 14 mysql 主从数据库热备实验
阅读量:7200 次
发布时间:2019-06-29

本文共 2358 字,大约阅读时间需要 7 分钟。

hot3.png

0安装数据库

sudo apt-get install mysql -server

设置root密码

1登入mysql数据库 创建用户

etc/init.d/mysql start

 mysql -uroot -p密码;

insert into mysql.user(Host,User,Password) values("%","dba",password("123456"));

grant all privileges on *.* to 'dba'@'%' identified by '123456';

SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;

flush privileges;

配置主服务器my.conf文件

找到[mysqld]设置

server-id        = 1 id设置不能相同。

log_bin            = /var/log/mysql/mysql-bin.log
expire_logs_days    = 10
max_binlog_size         = 100M
#binlog_do_db        = include_database_name
binlog_do_db            =hnswls 需要同步的数据库名称

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

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

#binlog_ignore_db    = include_database_name不需要同步的数据库名称

修改从服务器my.conf文件

server-id  =2

log_bin=/var/log/mysql/mysql-bin.log

replicate-do-db=hnswls

log-slave-updates

master-host=192.168.101.171 指定主服务器的ip

master-user=dba 主服务器已授权用户

master-password=123456密码

master-port=3306端口

master-connect-retry=30如果从服务器发现主服务器断掉,重新连接的时间差(秒)

replicate-ignore-db=不需要同步的数据库名称

从服务器指定新的位置重新同步

有的时候主从同步有问题了以后,需要从log位置的下一个位置进行同步,相当于跳过那个错误,这时候也可以使用CHANGE MASTER命令来处理,只要找到对应的LOG位置就可以,比如:

CHANGE MASTER TO MASTER_HOST='ip地址',MASTER_USER='用户名',MASTER_PASSWORD='123456',MASTER_LOG_FILE='mysql-bin.000006', MASTER_LOG_POS=106;

重启从服务器数据库

启动slave_IO_Running Slave_SQL_Running 进程

mysql> slave start;

这里介绍一些管理MYSQL主从同步的命令:

1.  停止MYSQL同步

STOP SLAVE IO_THREAD;    #停止IO进程

STOP SLAVE SQL_THREAD;    #停止SQL进程

STOP SLAVE;                               #停止IO和SQL进程

2.  启动MYSQL同步

START SLAVE IO_THREAD;    #启动IO进程

START SLAVE SQL_THREAD;  #启动SQL进程

START SLAVE;                             #启动IO和SQL进程

3.   重置MYSQL同步

RESET SLAVE;

查看MYSQL同步状态 SHOW SLAVE STATUS;

mysql>show slave status;

看到

   Slave_IO_Running: Yes

          Slave_SQL_Running: Yes

则配置成功

测试主从服务器是否能同步

在主服务器上面新建一个表,必须在hnswls数据下

mysql> use repl

Database changed

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

Query OK, 0 rows affected (0.00 sec)

 

mysql> insert into test values(1,'zaq');

Query OK, 1 row affected (0.00 sec)

 

mysql> insert into test values(1,'xsw');

Query OK, 1 row affected (0.00 sec)

 

mysql> select * from test;

+------+------+

| id    | name |

+-------+------+

|    1    | zaq   |

|    1    | xsw |

+-------+------+

2 rows in set (0.00 sec)

 

 

 

在从服务器查看是否同步过来

mysql> use hnswls;

Database changed

mysql> select * from test;

+------+------+

| id    | name |

+------+------+

|     1 | zaq   |

|     1 | xsw |

+------+------+

2 rows in set (0.00 sec)

转载于:https://my.oschina.net/duguaoxue/blog/495537

你可能感兴趣的文章
小程序开发基本认识
查看>>
一篇迟到的gulp文章,代码合并压缩,less编译
查看>>
命令行调用dubbo远程服务
查看>>
007-docker安装centos
查看>>
【微信】微信小程序 应用内的页面跳转在添加了tab以后就跳转不成功的问题解决...
查看>>
所有在Linux系统下 arp -d $ip 命令只能清除一个IP地址的对应MAC地址缓存,可以使用组合命令操作。...
查看>>
记一次傻逼的录入
查看>>
win10 mstsc 远程 windows2008R2
查看>>
Git 头像修改 原
查看>>
在NuoDB上运行Asterisk
查看>>
JavaWeb response对象常用操作
查看>>
BZOJ3288: Mato矩阵(欧拉函数 高斯消元)
查看>>
solr多core的处理
查看>>
Spring MVC+ Spring + Mybatis从零开始搭建一个精美且实用的管理后台
查看>>
数据库插入大量数据时不要忘记先删除索引(小技巧)
查看>>
bigdata-01-应用
查看>>
Linux平台 Oracle 18c RAC安装Part1:准备工作
查看>>
如何预估服务器带宽需求
查看>>
WIN10平板 如何关闭自动更新
查看>>
性能测试工具jmeter的安装
查看>>