当前位置:首页 » 操作系统 » mysql主从数据库配置

mysql主从数据库配置

发布时间: 2022-06-11 20:10:01

Ⅰ Ubuntu配置Mysql主从数据库

本次环境:虚拟机下
服务器:Ubuntu
14.04
LTS
数据库:
5.5.37
端口:3306
主IP:192.168.63.133
从IP:192.168.63.134
授权账号:
user:suxh
password:111111
好了交代完环境:我们直接配置:
第一步:主从两台服务器要有同样的数据库(需要同步的)这里用的是backup
数据库(不多说了,在同步开始前,把主库的复制一份到从库就行了)
第二步配置主(master)数据库
编辑/etc/my.cnf
主要是开启二进制日志
和设置要同步的数据库
等一些参数
#
binary
logging
format
-
mixed
recommended
binlog_format=mixed
binlog-ignore-db=mysql
binlog-do-db=backup
#
required
unique
id
between
1
and
2^32
-
1
#
defaults
to
1
if
master-host
is
not
set
#
but
will
not
function
as
a
master
if
omitted
server-id
=
1

参数解释下:
server-id
这个是唯一的不能跟从服务器相同。
binlog_format
二进制文件的格式
binlog_ignore-db
忽略的数据库
binlog-do-db
要同步的数据库
设置完了以后
重启数据库就可以了。
第三步从数据库:
同样修改/etc/my.cnf
在mysql
版本5.1.7
不支持master-host”类似的参数;
所以这里只要配置server-id=2
就可以了
然后登陆从数据库设置
change
master
to
master_host='192.168.63.133',
master_user='suxh',
master_password='111111';
slave
start;

基本配置就好了。这是我的简要笔记。

Ⅱ 如何用mysql搭配主从数据库

  • 两台机器,192.168.162.128(主) 192.168.162.130(从)

  • 配置主的配置文件

    vi /etc/my.cnf

    正常,说明主从搭建成功

Ⅲ mysql主从分离是怎么配置的

1、在主从服务器上都装上MySQL数据库,windows系统鄙人安装的是mysql_5.5.25.msi版本,Ubuntu安装的是mysql-5.6.22-linux-glibc2.5-i686.tar
windows安装mysql就不谈了,一般地球人都应该会。鄙人稍微说一下Ubuntu的MySQL安装,我建议不要在线下载安装,还是离线安装的好。大家可以参考 这位不知道大哥还是姐妹,写的挺好按照这个就能装上。在安装的时候可能会出现几种现象,大家可以参考解决一下:
(1)如果您不是使用root用户登录,建议 su - root 切换到Root用户安装,那就不用老是 sudo 了。
(2)存放解压的mysql 文件夹,文件夹名字最好改成mysql
(3)在./support-files/mysql.server start 启动MySQL的时候,可能会出现一个警告,中文意思是启动服务运行读文件时,忽略了my.cnf文件,那是因为my.cnf的文件权限有问题,mysql会认为该文件有危险不会执行。但是mysql还会启动成功,但如果下面配置从服务器参数修改my.cnf文件的时候,你会发现文件改过了,但是重启服务时,修改过后的配置没有执行,而且您 list一下mysql的文件夹下会发现很多.my.cnf.swp等中间文件。这都是因为MySQL启动时没有读取my.cnf的原因。这时只要将my.cnf的文件权限改成my_new.cnf的权限一样就Ok,命令:chmod 644 my.cnf就Ok

(4)Ubuntu中修改文档内容没有Vim,最好把Vim 装上,apt-get install vim,不然估计会抓狂。
这时候我相信MySQL应该安装上去了。
2、配置Master主服务器
(1)在Master MySQL上创建一个用户‘repl’,并允许其他Slave服务器可以通过远程访问Master,通过该用户读取二进制日志,实现数据同步。
创建用于读取日志的数据库用户
(2)找到MySQL安装文件夹修改my.Ini文件。mysql中有好几种日志方式,这不是今天的重点。我们只要启动二进制日志log-bin就ok。
在[mysqld]下面增加下面几行代码
View Code
(3)查看日志
mysql> SHOW MASTER STATUS;
+-------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+-------------------+----------+--------------+------------------+
| master-bin.000001 | 1285 | | |
+-------------------+----------+--------------+------------------+
1 row in set (0.00 sec)
重启MySQL服务
3、配置Slave从服务器(windows)
(1)找到MySQL安装文件夹修改my.ini文件,在[mysqld]下面增加下面几行代码
my.cnf 配置
重启MySQL服务
(2)连接Master
change master to master_host='192.168.0.104', //Master 服务器Ip
master_port=3306,
master_user='repl',
master_password='mysql',
master_log_file='master-bin.000001',//Master服务器产生的日志
master_log_pos=0;
(3)启动Slave
start slave;
4、Slave从服务器(Ubuntu)
(1)找到MySQL安装文件夹修改my.cnf文件,vim my.cnf
s

(2) ./support-files/myql.server restart 重启MySQL服务 , ./bin/mysql 进入MySQL命令窗口
(3)连接Master
change master to master_host='192.168.0.104', //Master 服务器Ip
master_port=3306,
master_user='repl',
master_password='mysql',
master_log_file='master-bin.000001',//Master服务器产生的日志
master_log_pos=0;
(4)启动Slave
start slave;
OK所有配置都完成了,这时候大家可以在Master Mysql 中进行测试了,因为我们监视的时Master mysql 所有操作日志,所以,你的任何改变主服务器数据库的操作,都会同步到从服务器上。创建个数据库,表试试吧。。。

Ⅳ 如何配置两个MySQL数据库之间的主从同步功能

IP的设置:A主机
IP:10.10.0.119;Mask:255.255.0.0;B主机
IP:10.10.8.112;Mask:255.255.0.0
在IP设置完成以后,需要确定两主机的防火墙确实已经关闭。可以使用命令service
iptables
status查看防火墙状态。如果防火墙状态。
为仍在运行。使用service
iptables
stop来停用防火墙。如果想启动关闭防火墙,可以使用setup命令来禁用或定制。最终以两台主机可以相互ping通为佳。
3.2
配置A主(master)
B从(slave)模式;3.2.1
配置A
为master。
增加一个用户同步使用的帐号:
GRANT
FILE
ON
*.*
TO
‘backup’@'10.10.8.112'
IDENTIFIED
BY
‘1234’;
GRANTREPLICATION
SLAVE
ON
*.*
TO
‘backup’@'10.10.8.112'
IDENTIFIED
BY
‘1234’。
赋予10.10.8.112也就是Slave机器有File权限,只赋予Slave机器有File权限还不行,还要给它REPLICATION
SLAVE的权限才可以。
增加一个数据库作为同步数据库:create
database
test;
创建一个表结构:create
table
mytest
(username
varchar(20),password
varchar(20));
修改配置文件:修改A的/etc/my.cnf文件。
在my.cnf配置项中加入下面配置:
server-id
=
1
#Server标识
log-bin
binlog-do-db=test
#指定需要日志的数据库
重起数据库服务:
service
mysqld
restart
查看server-id:
show
variable
like
‘server_id’。

Ⅳ 如何设计mysql 的主从关系

MySQL主从关系设置
一,概要
1.这个文档主要实现的是MYSQL主从备份(主机数据库任何修改,备份机器都会有实现)
2.但是有个问题,就是如果对备份机器数据库进行操作,可能会导致连接失败。
二,准备工作
1.可以是多台主机和从机,在这里我只用一台主机和从机为例讲解主从关系配置。2.主机IP:192.168.0.100(例子)从机IP:192.168.0.101(例子)3.主机和从机的IP地址必须是一个网段的。
4.MySQL版本:mysql-5.5.15-win32.msi安装路径:D:\MySQL\(例子)5.其他相关软件:
①.MySQL管理客户端:Navicat8forMySQL(Windows)。
②.编辑工具:Notepad++(建议用此编辑工具修改MySQL配置文件,点击此链接进入下载
页面)
三,配置主机【master】(IP:192.168.0.100)
1.在命令行窗口中执行:netstopmysql关闭mysql服务。
2.在mysql安装路径下找到配置文件my.ini文件(Linux下是文件my.cnf),一般都在MySQL安装目录下,本实验中在D:\MySQL\下。记得先备份以下原来的配置文件。并用Notepad++打开。然后在文件末尾加入下面的代码:
server-id=1#配一个唯一的ID编号
log-bin=NEW_NAME#指定日志类型
binlog-do-db=bojinv2#设置要进行主从复制的数据库名,同时也要在从机
【Slave】上设定(同步多个另起一行输入这行代码)
Binlog-ignore-db=mysql#设置不要进行主从复制的数据库名,同时也要在
【Slave】上设定(不同步多个另起一行输入这行代码
即可。)
3.在系统管理命令窗口输入:netstartmysql按回车启动mysql服务
4.在MySQL5.5CommandLineClient命令窗口(路径:开始菜单》程序》MySQL下),
输入数据库密码:******回车,如下图所示:
然后输入:grantreplicationslaveon*.*toslaveuser@从机IP(例:192.168.1.101)identifiedby'从机数据库密码(例:123456)'回车后如下图所示:
var cpro_psid ="u2572954"; var cpro_pswidth =966; var cpro_psheight =120;
出现这样的提示后,继续输入:flushprivileges;按回车,如下图所示:
出现这样的提示后,继续输入:showmasterstatus;按回车,如下图所示:
记住出现的表格中的File列和Position的值。
5.在系统管理命令窗口输入:netstopmysql按回车关闭mysql服务
6.进入MySQL管理客户端:Navicat8forMySQL(Windows)。点击菜单栏用户,右侧显示你
刚才创建[email protected]的用户,选中该用户。点击编辑用户链接。弹出窗口,再
选择权限,将所有权限都选上保存,这样主机就配置好了。重启一下MySQL服务。
四,配置从机【slave】(Ip:192.168.1.101)
1.在命令行窗口中执行:netstopmysql关闭mysql服务。
2.在mysql安装路径下找到配置文件my.ini文件(Linux下是文件my.cnf),一般都
在MySQL安装目录下,本实验中在D:\MySQL\下。记得先备份以下
原来的配置文件。并用Notepad++打开。然后在文件末尾加入下面的代
码:
server-id=2#配一个唯一的ID编号,不能与主机和其他的从机相同
replicate-do-db=bojinv2#设置要进行主从复制的数据库名,数据库名与主机
相同
replicate-ignore-db=mysql#设置不要进行主从复制的数据库名,数据库名与
主机相同
别忘了保存修改后的文件。
3.在系统管理命令窗口输入:netstartmysql按回车启动mysql服务
4.在MySQL5.5CommandLineClient命令窗口(路径:开始菜单》程序》MySQL下),
输入数据库密码,按回车成功登录数据库。5.登录成功后,在该命令窗口输入:
Changemastertomaster_host='主机IP(192.168.1.100)',master_user='

Ⅵ 如何配置两个MySQL数据库之间的主从同步功能

一、 概述
MySQL从3.23.15版本以后提供数据库复制(replication)功能,利用该功能可以实现两个数据库同步、主从模式、互相备份模式的功能。本文档主要阐述了如何在linux系统中利用mysql的replication进行双机热备的配置。
二、 环境
操作系统:Linux 2.6.23.1-42.fc8 # SMP(不安装XEN)
Mysql版本:5.0.45-4.fc8
设备环境:PC(或者虚拟机)两台
三、 配置
数据库同步复制功能的设置都在MySQL的配置文件中体现,MySQL的配置文件(一般是my.cnf):在本环境下为/etc/my.cnf。
3.1 设置环境:
IP的设置:
A主机 IP:10.10.0.119
Mask:255.255.0.0
B主机 IP:10.10.8.112
Mask:255.255.0.0
在IP设置完成以后,需要确定两主机的防火墙确实已经关闭。可以使用命令service iptables status查看防火墙状态。如果防火墙状态
为仍在运行。使用service iptables stop来停用防火墙。如果想启动关闭防火墙,可以使用setup命令来禁用或定制。
最终以两台主机可以相互ping通为佳。
3.2 配置A主(master) B从(slave)模式
3.2.1 配置A 为master
、增加一个用户同步使用的帐号:
GRANT FILE ON *.* TO ‘backup’@'10.10.8.112' IDENTIFIED BY ‘1234’;
GRANTREPLICATION SLAVE ON *.* TO ‘backup’@'10.10.8.112' IDENTIFIED BY ‘1234’;
赋予10.10.8.112也就是Slave机器有File权限,只赋予Slave机器有File权限还不行,还要给它REPLICATION SLAVE的权限才可以。
、增加一个数据库作为同步数据库:
create database test;
、创建一个表结构:
create table mytest (username varchar(20),password varchar(20));
、修改配置文件:
修改A的/etc/my.cnf文件,在my.cnf配置项中加入下面配置:
server-id = 1 #Server标识
log-bin
binlog-do-db=test #指定需要日志的数据库
、重起数据库服务:
service mysqld restart
查看server-id:
show variable like ‘server_id’;
实例:
mysql> show variables like 'server_id';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| server_id | 1 |
+---------------+-------+
1 row in set (0.00 sec)
、用show master status/G命令看日志情况。
正常为:
mysql> show master status/G
*************************** 1. row ***************************
File: mysqld-bin.000002
Position: 198
Binlog_Do_DB: test,test
Binlog_Ignore_DB:
1 row in set (0.08 sec)
3.2.2 配置B 为slave
、增加一个数据库作为同步数据库:
create database test;
、创建一个表结构:
create table mytest (username varchar(20),password varchar(20));
、修改配置文件:
修改B的/etc/my.cnf文件,在my.cnf配置项中加入下面配置:
server-id=2
master-host=10.10. 0.119
master-user=backup #同步用户帐号
master-password=1234
master-port=3306
master-connect-retry=60 #预设重试间隔秒
replicate-do-db=test #告诉slave只做backup数据库的更新
、重起数据库服务:
service mysqld restart
查看server-id:
show variables like ‘server_id’;
实例:
mysql> show variables like 'server_id';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| server_id | 2 |
+---------------+-------+
1 row in set (0.00 sec)
、用show slave status/G命令看日志情况。
正常为:
mysql> show slave status/G
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 10.10.0.119
Master_User: backup
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: mysqld-bin.000001
Read_Master_Log_Pos: 98
Relay_Log_File: mysqld-relay-bin.000003
Relay_Log_Pos: 236
Relay_Master_Log_File: mysqld-bin.000001
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
Replicate_Do_DB: test,test
Replicate_Ignore_DB:
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: 98
Relay_Log_Space: 236
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
1 row in set (0.01 sec)
3.2.3 验证配置
分别使用insert, delete , update在A主机进行增删改查数据库;查看B主机的数据库是否与A主机一致;若一致,则配置成功。
3.3双机互备模式
如果在A主机加入slave设置,在B主机加入master设置,则可以做B->A的同步。
、在A主机的配置文件中 mysqld配置项加入以下设置:
master-host=10.10.8.112
master-user=backup
master-password=1234
replicate-do-db=test
master-connect-retry=10
、在B的配置文件中 mysqld配置项加入以下设置:
log-bin
binlog-do-db=test
注意:当有错误产生时,*.err日志文件同步的线程退出,当纠正错误后,要让同步机制进行工作,运行slave start。
重起A、B机器,则可以实现双向的热备份。
四、 常见问题及解决
、Slave机器的权限问题,不但要给slave机器File权限,还要给它REPLICATION SLAVE的权限。
、在修改完Slave机器/etc/my.cnf之后,slave机器的mysql服务启动之前,记得要删除掉master.info
、在show master status或着show slave status不正常时,看看.err是怎样说的。
、Slave上Mysql的Replication工作有两个线程, I/O thread和SQL thread。I/O的作用是从
master 3306端口上把它的binlog取过来(master在被修改了任何内容之后,就会把修改了什么写到自己的binlog等待slave更
新),然后写到本地的relay-log,而SQL thread则是去读本地的relay-log,再把它转换成本Mysql所能理解的语句,于是同步
就这样一步一步的完成.决定I/O thread的是/var/lib/mysql/master.info,而决定SQL thread的是/var
/lib/mysql/relay-log.info.
、启动slave,命令用start slave;重新启动用restart slave

Ⅶ 如何配置MySQL数据库主从复制

MySQL支持单向、异步复制,复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器。主服务器将更新写入二进制日志文件,并维 护日志文件的一个索引以跟踪日志循环。当一个从服务器连接到主服务器时,它通知主服务器从服务器在日志中读取的最后一次成功更新的位置。从服务器接收从那 时起发生的任何更新,然后封锁并等待主服务器通知下一次更新。

为什么使用主从复制?

1、主服务器/从服务器设置增加了健壮性。主服务器出现问题时,你可以切换到从服务器作为备份。

2、通过在主服务器和从服务器之间切分处理客户查询的负荷,可以得到更好的客户响应时间。但是不要同时在主从服务器上进行更新,这样可能引起冲突。

3、使用复制的另一个好处是可以使用一个从服务器执行备份,而不会干扰主服务器。在备份过程中主服务器可以继续处理更新。

MySQL使用3个线程来执行复制功能(其中1个在主服务器上,另两个在从服务器上。当发出START SLAVE时,从服务器创建一个I/O线程,以连接主服务器并让主服务器发送二进制日志。主服务器创建一个线程将二进制日志中的内容发送到从服务器。从服 务器I/O线程读取主服务器Binlog Dump线程发送的内容并将该数据拷贝到从服务器数据目录中的本地文件中,即中继日志。第3个线程是SQL线程,从服务器使用此线程读取中继日志并执行日 志中包含的更新。SHOW PROCESSLIST语句可以查询在主服务器上和从服务器上发生的关于复制的信息。

默认中继日志使用host_name-relay-bin.nnnnnn形式的文件名,其中host_name是从服务器主机名,nnnnnn是序 列号。用连续序列号来创建连续中继日志文件,从000001开始。从服务器跟踪中继日志索引文件来识别目前正使用的中继日志。默认中继日志索引文件名为 host_name-relay-bin.index。在默认情况,这些文件在从服务器的数据目录中被创建。中继日志与二进制日志的格式相同,并且可以用 mysqlbinlog读取。当SQL线程执行完中继日志中的所有事件后,中继日志将会被自动删除。

从服务器在数据目录中另外创建两个状态文件--master.info和relay-log.info。状态文件保存在硬盘上,从服务器关闭时不会丢失。下次从服务器启动时,读取这些文件以确定它已经从主服务器读取了多少二进制日志,以及处理自己的中继日志的程度。

设置主从复制:

1、确保在主服务器和从服务器上安装的MySQL版本相同,并且最好是MySQL的最新稳定版本。

2、在主服务器上为复制设置一个连接账户。该账户必须授予REPLICATION SLAVE权限。如果账户仅用于复制(推荐这样做),则不需要再授予任何其它权限。

mysql> GRANT REPLICATION SLAVE ON *.*

-> TO 'replication'@'%.yourdomain.com' IDENTIFIED BY 'slavepass';

3、执行FLUSH TABLES WITH READ LOCK语句清空所有表和块写入语句:

mysql> FLUSH TABLES WITH READ LOCK;

保持mysql客户端程序不要退出。开启另一个终端对主服务器数据目录做快照。

shell> cd /usr/local/mysql/

shell> tar -cvf /tmp/mysql-snapshot.tar ./data

如果从服务器的用户账户与主服务器的不同,你可能不想复制mysql数据库。在这种情况下,应从归档中排除该数据库。你也不需要在归档中包括任何日志文件或者master.info或relay-log.info文件。

当FLUSH TABLES WITH READ LOCK所置读锁定有效时(即mysql客户端程序不退出),读取主服务器上当前的二进制日志名和偏移量值:

mysql > SHOW MASTER STATUS;

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

| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |

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

| mysql-bin.003 | 73 | test | manual,mysql |

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

File列显示日志名,而Position显示偏移量。在该例子中,二进制日志值为mysql-bin.003,偏移量为73。记录该值。以后设置从服务器时需要使用这些值。它们表示复制坐标,从服务器应从该点开始从主服务器上进行新的更新。如果主服务器运行时没有启用--logs-bin,SHOW MASTER STATUS显示的日志名和位置值为空。在这种情况下,当以后指定从服务器的日志文件和位置时需要使用的值为空字符串('')和4.

取得快照并记录日志名和偏移量后,回到前一中端重新启用写活动:

mysql> UNLOCK TABLES;

4、确保主服务器主机上my.cnf文件的[mysqld]部分包括一个log-bin选项。该部分还应有一个server-id=Master_id选项,其中master_id必须为1到232–1之间的一个正整数值。例如:

[mysqld]

log-bin

server-id=1

如果没有提供那些选项,应添加它们并重启服务器。

5、停止从服务器上的mysqld服务并在其my.cnf文件中添加下面的行:

[mysqld]

server-id=2

slave_id值同Master_id值一样,必须为1到232–1之间的一个正整数值。并且,从服务器的ID必须与主服务器的ID不相同。

6、将数据备据目录中。确保对这些文件和目录的权限正确。服务器 MySQL运行的用户必须能够读写文件,如同在主服务器上一样。

Shell> chown -R mysql:mysql /usr/local/mysql/data

7、启动从服务器。在从服务器上执行下面的语句,用你的系统的实际值替换选项值:

mysql> CHANGE MASTER TO

-> MASTER_HOST='master_host_name',

-> MASTER_USER='replication_user_name',

-> MASTER_PASSWORD='replication_password',

-> MASTER_LOG_FILE='recorded_log_file_name',

-> MASTER_LOG_POS=recorded_log_position;

8、启动从服务器线程:

mysql> START SLAVE;

执行这些程序后,从服务器应连接主服务器,并补充自从快照以来发生的任何更新。

9、如果出现复制错误,从服务器的错误日志(HOSTNAME.err)中也会出现错误消息。

10、从服务器复制时,会在其数据目录中发现文件master.info和HOSTNAME-relay-log.info。从服务器使用这两个文 件跟踪已经处理了多少主服务器的二进制日志。不要移除或编辑这些文件,除非你确切知你正在做什么并完全理解其意义。即使这样,最好是使用CHANGE MASTER TO语句。

Ⅷ mysql 怎么配置主从数据库

5.6mysql怎么进行主从配置
在主数据库中创建新数据库rep_test。
然后编辑主数据库的my.ini文件
在[mysqld]节点中增加如下内容:
server-id=1 #指定唯一的ID,1至32,必须的
log-bin=mysql-log-bin #指定二进制日志存放路径,必须的
binlog-do-db=rep_test #指定要同步的数据库,必须的
#binlog-ignore-db=mysql #指定不要同步的数据库,如果指定了binlog-do-db就不用再指定该项

Ⅸ MySql服务器怎么架设主从数据库服务器呢

大致步骤如下:主MySQL服务器:192.168.3.1备MySQL服务器:192.168.3.2配置文件路径:/etc/my.cnfMySQL服务状态:停止-------------------------主服务器配置-------------------编辑配置文件:vi
/etc/my.cnf找到[mysqld]在它下面添加内容:server-id=1log-bin=backuplogbinlog-do-db=test#如果有多个数据库需要同步,添加多行即可#binlog-do-db=test2保存my.cnf配置文件。启动mysql:service
mysqld
start用root登录mysql,为同步数据创建新帐号:grant
file,select,replication
slave
on
*.*
to
'test'@'%'
identified
by
'123456';------------------------备服务器配置-------------------------编辑配置文件:vi
/etc/my.cnf在[mysqld]下加入:server-id=2master-host=192.168.3.1master-user=testmaster-password=123456master-port=3306#replicate-do-db=test
#此配置项为设置仅同步的数据库名,其它数据库忽略(建议不设置此选项)保存并启动mysql即可。如果需要查看同步状态,可分别在主从服务器上用如下命令查看:主服务器:show
master
status;从服务器:show
slave
status\G------------------值得说明的两个文件-----------------备份服务器上的/var/lib/mysql/目录下有两个:master.info和relay-log.info它们记录了主服务器的配置信息和同步信息,如果出现备份服务器不能同步数据的问题,可尝试将这两个文件删除,让备服务器重新同步。备注:进行操作之前先备份下数据比较保险一点。

Ⅹ 如何在一台windows主机上搭建mysql主从配置

先在主数据库中创建新数据库rep_test。
然后编辑主数据库的my.ini文件
在[mysqld]节点中增加如下内容:
server-id=1
#指定唯一的ID,1至32,必须的
log-bin=mysql-log-bin
#指定二进制日志存放路径,必须的
binlog-do-db=rep_test
#指定要同步的数据库,必须的
#binlog-ignore-db=mysql
#指定不要同步的数据库,如果指定了binlog-do-db就不用再指定该项
重启主数据库,然后在主数据库中建立一个备份账户
mysql>grant
replication
slave
on
*.*
to [email protected]
identified
by
'slave'
;
mysql>flush
privileges;
PS:identified
by
指定的slave是账号[email protected]
的密码
显示主服务器的状态信息,并且找到File

Position
的值记录下来;
mysql>show
master
status;

在从数据库中创建新的数据库rep_test。
然后编辑从数据库的my.ini文件
在[mysqld]节点中增加如下内容:
server-id=2
#指定唯一的ID,2至32,必须的,并且不能跟主数据库一样
replicate-do-db=rep_test
#指定要同步的数据库,必须的
#replicate-ignore-db=mysql
#指定不要同步的数据库,
重启从数据库,设置登录主数据库的账号和密码等信息,然后启动slave
mysql>change
master
to
master_host='192.168.1.2',master_user='slave',master_password='slave',
master_log_file='mysql-bin.000002',master_log_pos=120;
mysql>start
slave;
查看从数据库的信息
mysql>show
slave
status
\G;
如果出现: Slave_IO_Running:
YesSlave_SQL_Running:
Yes以上两项都为Yes,那说明没问题了
测试主从复制是否有效果
在主数据库中创建一个新的数据库,然后再切换到从数据库查看是否同样多出通名的数据库
配置旧数据库的主从复制
如果一开始数据库的架构不是主从复制,并且运行一段时间后已经有数据存在,那配置的方式略有不同。
编辑主数据库的my.ini文件,加上一下内容:
binlog-do-db=landclash
重启主数据库,然后在主数据库中锁定所有的表
mysql>flush
tables
with
read
lock;
显示主服务器的状态信息,并且找到File

Position
的值记录下来;
mysql>show
master
status;

将主数据库data目录下需要做主从复制的数据库的同名目录拷贝到从数据库的data目录下
编辑从数据库的my.ini文件,加上一下内容:
replicate-do-db=landclash
重启从数据库,因为主数据库在重新配置my.ini后,日志文件变成新的文件,所以需要再次设置登录主数据库的账号和密码等信息
mysql>stop
slave;
mysql>change
master
to
master_host='192.168.1.2',master_user='slave',master_password='slave',
master_log_file='mysql-bin.000003',master_log_pos=120;
mysql>start
slave;
再次输入查看从数据库状态的命令
mysql>show
slave
status
\G;
完成上述配置后,回到主数据库,将表解锁
mysql>unlock
tables;
之后在主数据库的修改就能同步到从数据库上了。

热点内容
java中if中的if 发布:2024-09-17 04:38:16 浏览:264
c语言33 发布:2024-09-17 04:31:19 浏览:16
安卓手机怎么转移苹果系统 发布:2024-09-17 04:19:07 浏览:934
sql从表中查询数据 发布:2024-09-17 04:19:07 浏览:972
米粒泥解压 发布:2024-09-17 04:19:01 浏览:729
2010word加密方法 发布:2024-09-17 04:17:36 浏览:282
crv哪个配置性价比高2021 发布:2024-09-17 04:07:51 浏览:36
wincc图形编译在哪里 发布:2024-09-17 03:58:26 浏览:978
androidubuntu 发布:2024-09-17 03:50:27 浏览:702
识梦源码 发布:2024-09-17 03:50:18 浏览:27