数据库主从

主库  ip:192.168.1.66

从库  ip:192.168.1.67

主机:

1)创建一个slave用户,并且赋予权限

grant replication slave,reload,super on *.* to ‘slave‘@‘%‘ identified by ‘123456‘;

flush privileges;

2)更改配置文件(/etc/my.cnf 放在[mysqld]下面)

server-id               = 1    #主机标示,整数

log-bin                 = mysql-binlog   #确保此文件可写

read-only              =0  #主机,读写都可以

binlog-do-db         =1309phpb   #需要备份数据,多个写多行

binlog-ignore-db    =mysql #不需要备份的数据库,多个写多行

3)重启mysql

service  mysqld  restart

4)查看主库的状态

在mysql中:show  master  status\G

mysql> show  master  status\G;

*************************** 1. row ***************************

File: mysql-binlog.000003

Position: 271

Binlog_Do_DB: 1309phpb

Binlog_Ignore_DB: mysql

1 row in set (0.00 sec)

ERROR:

No query specified

出现这样的提示,说明主库配置没有什么问题了

5)查看主库日志开始

mysql> show  master  status;

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

| File                | Position | Binlog_Do_DB | Binlog_Ignore_DB |

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

| mysql-binlog.000003 |      271 | 1309phpb     | mysql            |

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

1 row in set (0.00 sec)

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

二)从库的配置

1)修改从库配置文件(vi  /etc/my.cnf)

server-id               = 2

log-bin                 = mysql-binlog

master-host     =192.168.1.66

master-user     =slave

master-pass     =123456

master-port     =3306

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

replicate-do-db =lvs #只复制某个库

replicate-ignore-db=mysql #不复制某个库

2)重启mysql服务

3)进入mysql 更改主库参数

change master to master_host=‘192.168.1.66‘,master_user=‘slave‘,master_password=‘123456‘,master_log_file=‘File字段的值‘,master_log_pos=Position 字段值;

查看主库日志开始

mysql>     show  master  status;

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

| File                | Position | Binlog_Do_DB | Binlog_Ignore_DB |

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

| mysql-binlog.000003 |      271 | 1309phpb     | mysql            |

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

1 row in set (0.00 sec)

4)重启进程

start  slave

5)查看从库的的状态

show   slave  status\G

show  slave  status\G;

*************************** 1. row ***************************

Slave_IO_State: Waiting for master to send event

Master_Host: 192.168.1.51

Master_User: slave

Master_Port: 3306

Connect_Retry: 60

Master_Log_File: mysql-binlog.000003

Read_Master_Log_Pos: 271

Relay_Log_File: localhost-relay-bin.000004

Relay_Log_Pos: 419

Relay_Master_Log_File: mysql-binlog.000003

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

Replicate_Do_DB: 1309phpb

Replicate_Ignore_DB: mysql

Replicate_Do_Table:

Replicate_Ignore_Table:

Replicate_Wild_Do_Table:

Replicate_Wild_Ignore_Table:

Last_Errno: 0

Last_Error:

Skip_Counter: 0

Exec_Master_Log_Pos: 271

Relay_Log_Space: 578

Until_Condition: None

Until_Log_File:

Until_Log_Pos: 0

Master_SSL_Allowed: No

Master_SSL_CA_File:

Master_SSL_CA_Path:

Master_SSL_Cert:

Master_SSL_Cipher:

Master_SSL_Key:

Seconds_Behind_Master: 0

Master_SSL_Verify_Server_Cert: No

Last_IO_Errno: 0

Last_IO_Error:

Last_SQL_Errno: 0

Last_SQL_Error:

1 row in set (0.00 sec)

6)此时可以从主库添加数据,从库查询数据了

时间: 2024-11-09 07:40:28

数据库主从的相关文章

Linux下Mongodb数据库主从同步配置

说明: 有两台已经安装完成的Mongodb数据库服务器,现在需要把一台设置为主库,另一台设置为从库,实现主从同步. 操作系统:CentOS 7.0 64位 MongoDB数据库版本:mongodb-linux-x86_64-2.6.5 准备工作:MongoDB数据库安装 具体操作: 一.配置MongoDB主库 以下操作在MongoDB主库服务器上进行 1.cd  /usr/local/mongodb/ #进入MongoDB安装目录 vi /usr/local/mongodb/mongodb.co

数据库主从不同步问题随笔

前几天,公司的新上线平台在生产环境出了bug,就是新增一个用户后,后台爆空指针异样,然后开发在查看日志后并且问了公司技术部后,原来公司数据库主从同步时间是200-300毫秒,新增一个用户的业务是,新增成功往数据库主库中插入数据,然后从库中获取插入数据的id,并为这个id的用户分配角色,这2个动作是连续的,而从新增用户到分配角色这个时间从日志中看到2个步骤的时间少于200毫秒,但是这个问题在测试平台没有暴露出来,因为测试平台是SSD硬盘,而生产环境是机械硬盘. 为了解决这个问题,公司技术总监找开发

mysql数据库主从同步

环境: Mater:   CentOS7.1  5.5.52-MariaDB  192.168.108.133 Slave:   CentOS7.1  5.5.52-MariaDB  192.168.108.140 1.导出主服务数据,将主备初始数据同步 master: //从master上导出需要同步的数据库信息 mysqldump -u*** -p*** --database test > test.sql //将master上的备份信息传输到slave上 scp /root/test.sq

基于 EntityFramework 的数据库主从读写分离服务插件

基于 EntityFramework 的数据库主从读写分离服务插件 1.       版本信息和源码 1.1 版本信息 v1.0 beta(2015-04-02),基于 EF 6.1 开发,支持 EF 6.1 之后的所有 EF6 版本. 1.2 开放源码地址 https://github.com/cjw0511/NDF.Infrastructure 关于该 EF 数据库主从读写分离服务核心源码位于文件夹: src\ NDF.Data.EntityFramework\MasterSlaves 文件

linux下mysql数据库主从同步配置

说明: 操作系统:CentOS 5.x 64位 MySQL数据库版本:mysql-5.5.35 MySQL主服务器:192.168.21.128 MySQL从服务器:192.168.21.129 准备篇: 说明:在两台MySQL服务器192.168.21.128和192.168.21.129上分别进行如下操作 备注: 作为主从服务器的MySQL版本建议使用同一版本! 或者必须保证主服务器的MySQL版本要高于从服务器的MySQL版本! 一.配置好IP.DNS .网关,确保使用远程连接工具能够连接

京东MySQL数据库主从切换自动化

1. 产生背景 随着京东业务的高速增长,数据的重要性对于京东来说重要程度不说自明,在信息时代,数据有着比人们更大的力量,数据库的价值可见一斑,数据库的存在为人们提供了更快的查询,那么为了更好地做到数据库的高可用,保证持续提供服务,简化DBA操作,节省数据库故障切换的时间,故开发此数据库主从切换自动化系统. 2. 实现原理 此系统基于MHA做数据库切换,结合京东数据库切换的特点,定制自己的切换系统.MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的

Linux系统中MySQL数据库“主从”配置

MySQL数据库"主从"配置 一.配置概述: 在Linux操作系统中配置MySQL数据库的主从复制是很重要的,为什么这样说呢!是因为在你搭建一个服务器以后你配置了2台数据库,一主一从.2台数据库配置好以后,当其中一台数据库被攻击以后,你被攻击的这台数据库的数据会被自动的备份到另一台数据库中去.即使被攻击了数据也不会丢失.配置主从就是为了让web网站或其他的软件可以正常运转,确保数据的存在. 二.配置步骤: <配置具备的条件> 1.需要在虚拟机上安装好两台主机,同时安装好同一

京东DBA 王伟 | MySQL数据库主从切换自动化

http://mp.weixin.qq.com/s?__biz=MjM5ODI5Njc2MA==&mid=2655808515&idx=1&sn=069d05a3bad6f67f400475ca6ad714c2&chksm=bd7421d48a03a8c274570da116945bfd6a2eb90615d8b7fba9d78e57890604bd1c415591f81d&mpshare=1&scene=23&srcid=01101Pn9HfMWE

mysql数据库主从同步配置教程--数据库同步

背景: 最近有一个mysql数据库同步的需求,我用了mysql主从同步的方法来实现.下面把步骤记录一下. 环境和拓扑 操作系统:Centos6.6 X64 mysql版本:5.1.73 Master: 10.6.1.210 Slave:  10.6.1.211 需求: 实现Master上test库同步到Slave上,但是禁止同步该库下的AA表 1.配置Master上的my.cnf #vim  /etc/my.cnf 添加内容到[mysqld]下,设定只同步test 数据库: [mysqld] l

基于 EntityFramework 的数据库主从读写分离架构 - 目录

基于 EntityFramework 的数据库主从读写分离架构 回到目录,完整代码请查看(https://github.com/cjw0511/NDF.Infrastructure)中的目录: src\ NDF.Data.EntityFramework\MasterSlaves 基于 EntityFramework 的数据库主从读写分离架构 - 需求/功能概述 基于 EntityFramework 的数据库主从读写分离架构(1)- 原理概述和基本功能实现 基于 EntityFramework 的