澳门新葡萄京娱乐网站-澳门新葡萄京888官网-所有平台

热门关键词: 澳门新葡萄京娱乐网站,澳门新葡萄京888官网

mysql不难基本,完毕MySQL数据库主从服务器热备份

作者: MySQL数据库  发布:2019-12-11

Mysql热备份有多个步骤:

show tables; #查阅osyunweidb表布局,拜望到有一个新建的表test,表示数据库同步成功


二、配置MySQL主服务器(172.18.34.161)

  1) mysql  -u root  -p                   #进入MySQL控制台    
  2) insert into mysql.user(Host,User,Password) values('localhost','rootbak',password('123456'));   #树立MySQL主从数据库的同台客户rootbak  密码: 123456

  3) grant replication slave  on *.* to 'osyunweidbbak'@'192.168.21.168'   identified by '123456' with grant option; 

  #授权客商rootbak只可以从172.18.133.123那几个IP访谈主服务器172.18.34.1陆拾贰地方的数据库,并且只具有数据库备份的权杖

  备注:纵然您不能够保障在配备时期会有多少变动,在配备此前能够先走入MySQL调整台推行上边三令五申

  flush tables with read lock;    #数据库只读锁定命令,防止导出数据库的时候有数量写入

  unlock tables;   #淹没锁定

三、配置MySQL主服务器的my.cnf文件(windows下布署文件为my.ini)
  1) #编辑配置文件,在[mysqld]一些增加下边内容
  2) server-id=1   #安装服务器id,表示主服务器
  3) log_bin=mysql-bin  #开始MySQ二进制日志系统
  4) binlog-do-db= backuptest #内需联合的数量库名,借使有八个数据库,可另行此参数,各样数据库大器晚成行
  5) binlog-ignore-db=mysql   #今是昨非步mysql系统数据库

  //能够直接展开配置文件,写入配置音讯

  澳门新葡萄京888官网 1 

  6) service mysqld  restart  #重启MySQL
  7) mysql -u root -p   #进入mysql控制台
  8卡塔尔(英语:State of Qatar) show master status;  查看主服务器,现身以下相像音讯

  澳门新葡萄京888官网 2

  注意:这里记住File的值:mysql-bin.000002和Position的值:106,后边会用到。
五、配置MySQL从服务器的my.cnf文件(同上)

   1)#编排配置文件,在[mysqld]部分加多上边内容
   2) server-id=2   #设置服务器id为2,表示为从数据库
   3) log-bin=mysql-bin  #开发银行MySQ二进制日志系统
   4) replicate-do-db= backuptest #亟待联合的数目库名,假如有多少个数据库,可 重 复此参数,每一种数据库风流洒脱行
   5) replicate-ignore-db=mysql   #不等步mysql系统数据库

 

   service mysqld restart   #重启MySQL
留意:MySQL 5.1.7版本之后,已经不帮助把master配置属性写入my.cnf配置文件中了,只要求把一同的数据库和要不经意的数据库写入就能够。

  mysql  -u root -p  #进入MySQL控制台
  slave stop;   #截止slave同步进度

  Change master to master_host='172.18.34.161',master_user='rootbak', master_password='123456',master_log_file='mysql-bin.000002' ,master_log_pos=106;   #执行一齐语句
  slave start;    #敞开slave同步进度
  SHOW SLAVE STATUSG   #翻开slave同步信息,现身以下内容
*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event
                  Master_Host: 172.18.34.161
                  Master_User: rootbak
                  Master_Port: 3306
澳门新葡萄京888官网,                Connect_Retry: 60
              Master_Log_File: mysql-bin.000002
          Read_Master_Log_Pos: 106
               Relay_Log_File: MySQLSlave-relay-bin.000002
                Relay_Log_Pos: 253
        Relay_Master_Log_File: mysql-bin.000002
             Slave_IO_Running: Yes
            Slave_SQL_Running: Yes
              Replicate_Do_DB: backuptest
          Replicate_Ignore_DB:
           Replicate_Do_Table:
       Replicate_Ignore_Table:
1 row in set (0.00 sec)
注意查看:
  Slave_IO_Running: Yes
  Slave_SQL_Running: Yes
如上那五个参数的值为Yes,即表达配置成功!
六、测量试验是还是不是配备成功

  写入测量检验Sql语句,推断是不是配备成功。现身错误,张开Mysql的报错日志自行查看。

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

其他注意事项这里不说,想打听越多的能够本人去精晓或问下小编也行!

  1. 用作主服务器的Master,会把数据库每二遍的改良(每条sql语句)都记录到二进制日志Binarylog中。
  2. 用作从服务器Slave, 使用master上的顾客登入到 master上,读取master的Binarylog,写入到温馨的联网日志 Relaylog。
  3. 接下来从服务器自个儿的sql线程会担当读取那在那之中继日志,并施行叁次

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

今日我们都不说那个!大家就说下轻便原理,和简易实际操作!

原理:

Last_Error:

第二步:配置mysql的中坚配置

CentOS6.5 MySQL主从同步,MySQL版本5.6.21

主服务器:centos6.5 IP:192.168.1.101

从服务器:centos6.5 IP:192.168.1.102

风华正茂、主服务器相关配置

1、创立同步账户并钦赐服务器地址

[root@localhost ~]mysql -uroot -p

mysql>use mysql

mysql>grant replication slave on *.* to 'testuser'@'192.168.1.102' identified by '12345678';

mysql>flush privileges #刷新权限

授权用户testuser只能从192.168.1.102那些地方访谈主服务器192.168.1.101的数据库,何况只享有数据库备份的权能

2、改善/etc/my.cnf配置文件vi /etc/my.cnf

[mysqld]下增多以下参数,若文件中早就存在,则不用增多

server-id=1

log-bin=mysql-bin  #起步MySQL二进制日志系统,

binlog-do-db=ourneeddb  #内需一同的数据库

binlog-ignore-db=mysql  #不一致步mysql系统数据库,若还恐怕有其余不想一同的,继续丰裕

[root@localhost ~]/etc/init.d/mysqld restart #重启服务

3、查看主服务器master状态(注意File与Position项,从服务器供给这两项参数卡塔尔(قطر‎

mysql> show master status;

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

| File            | Position | Binlog_Do_DB | Binlog_Ignore_DB |

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

| mysql-bin.000012 |      120 | ourneeddb| mysql            |

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

4、导出数据库

导出数据库以前先锁定数据库

flush tables with read lock;    #数据库只读锁定命令,幸免导出数据库的时候有数量写入

unlock tables; #肃清锁定

导出数据库构造及数量:mysqldump -uroot -p ourneeddb > /home/ourneeddb.sql

导出存款和储蓄进度及函数 :mysqldump -uroot -p -ntd -奥德赛 ourneeddb > ourneeddb_func.sql

tips:-ntd导出存款和储蓄进度、-Evoque导出函数

二、从服务器相关配置

1、校订/etc/my.cnf配置文件vi /etc/my.cnf

[mysqld]下加多以下参数,若文件中早就存在,则不用增加

server-id=2  #安装从服务器id,必需于主服务器分化

log-bin=mysql-bin  #运行MySQ二进制日志系统

replicate-do-db=ourneeddb  #供给一块的多寡库名

replicate-ignore-db=mysql  #今是昨非步mysql系统数据库

[root@localhost~ ]/etc/init.d/mysqld restart #重启服务

2、导入数据库

导入进程这里不做演讲

3、配置基本同步

[root@localhost~ ]mysql -uroot -p

mysql>use mysql

mysql>stop slave;

mysql>change master to

master_host='192.168.1.101',

master_user='testuser',

master_password='12345678',

master_log_file='mysql-bin.000012',

master_log_pos=120;  #log_file与log_pos是主服务器master状态下的File与Position

mysql>start slave;

mysql>show slave statusG;

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

Slave_IO_State: Waiting for master to send event

Master_Host: 192.168.1.101

Master_User: testuser

Master_Port: 3306

Connect_Retry: 60

Master_Log_File: mysql-bin.000012

Read_Master_Log_Pos: 120

Relay_Log_File: orange-2-relay-bin.000003

Relay_Log_Pos: 283

Relay_Master_Log_File: mysql-bin.000012

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

Replicate_Do_DB: orange

Replicate_Ignore_DB: mysql,test,information_schema,performance_schema

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: 120

Relay_Log_Space: 1320

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:

Replicate_Ignore_Server_Ids:

Master_Server_Id: 1

Master_UUID: 773d2987-6821-11e6-b9e0-00163f0004f9

Master_Info_File: /home/mysql/master.info

SQL_Delay: 0

SQL_Remaining_Delay: NULL

Slave_SQL_Running_State: Slave has read all relay log; waiting for the slave I/O thread to update it

Master_Retry_Count: 86400

Master_Bind:

Last_IO_Error_Timestamp:

Last_SQL_Error_Timestamp:

Master_SSL_Crl:

Master_SSL_Crlpath:

Retrieved_Gtid_Set:

Executed_Gtid_Set:

Auto_Position: 0

留意查看Slave_IO_Running: Yes  Slave_SQL_Running: Yes这两项必得为Yes 以致Log_File、Log_Pos要于master状态下的File,Position相似

假定都是不利的,则证实配置成功!


地点的操作,网络有广大!特别的这叁个核心配置参数,不懂的话,要百度下多少个参数皆有哪些效果与利益!这样学习起来就更明了了!

表达:在两台MySQL服务器172.18.34.161和172.18.133.123上个别实行如下操作

1 row in set (0.00 sec)

mysql轻易主从有好两种解决方案,如:什么一齐,异步,什么半合伙等等!

生机勃勃、主从服务器分别作以下操作:

  1. 本子同样
  2. 保障配置项生机勃勃致
  3. 管教你备份的数据库在主导服务器中大同小异
  4. 下文以数据库backuptest为例,主从服务器均有叁个backuptest数据库

1、导出数据库osyunweidb

             对于新手,不要及时就下刀到服务器配置mysql数据库主从复制,同步等等!首先,要询问mysql主从的原理,否则,你从网络cp人家的事例,错了,都不知哪儿出标题!那是笔者对没接触过mysql轻松主从而在专门的学业中就任何时候要用到mysql主从的校友的忠告!

1 row in set (0.01 sec)

注意事项:

show master status; #查看主服务器,出现以下相近音信

首先步:说说mysql轻易基本原理

mysql主从复制原理

澳门新葡萄京888官网 3

从库生成三个线程,四个I/O线程,三个SQL线程;

i/o线程去伏乞主库 的binlog,并将得到的binlog日志写到relay log(中继日志) 文件中;

主库会生成三个 log dump 线程,用来给从库 i/o线程传binlog;

SQL 线程,会读取relay log文件中的日志,并解析成具体操作,来落成核心的操作黄金时代致,而最终数额意气风发致;

轻松易行说:五个人,唯有叁个去高校读书,二个待在家里,去读书的十三分把观望的,听到的,抄到的都写在练习本上,binlog正是这一个演习本,在家这一个呢就拿着演习本学习,因为连个人都以在练习本上边学东西,所以雷同!道理就那样!因为mysql的操作都会记录在binlog里面,这些binlog是供给安插一下的!


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

(2)服务器的mysql版本必需风华正茂致或从服务器的多少高些

Slave_SQL_Running: Yes

(1)主从数据库在一块儿前,主从七个数据库必得面面俱到相等(一模二样)

Read_Master_Log_Pos: 107

Last_IO_Errno: 0

slave stop; #停下slave同步进度

配置篇

Seconds_Behind_Master: 0

create database osyunweidb; #创办数据库

Replicate_Do_DB: osyunweidb

Slave_IO_State: Waiting for master to send event

mysql> show variables like 'server_id';

use osyunweidb #踏入数据库

| server_id | 2 |

mysql -u root -p #进入MySQL控制台

192.168.21.129  Slave

mysql -u root -p #进入MySQL控制台

悉心:这里记住File的值:mysql-bin.000011和Position的值:107,前面会用到。

show variables like 'server_id'; #查阅server-id的值,必得为地方安装的2,不然请重回修正配置文件

CREATE TABLE test ( id int not null primary key,name char(20) ); #创建test表

2、导入数据库到MySQL从服务器

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

Master_Server_Id: 1

Last_Errno: 0

vi /etc/my.cnf #编排配置文件,在[mysqld]意气风发对增添上面内容

Replicate_Wild_Ignore_Table:

Until_Log_Pos: 0

三、配置MySQL主服务器(192.168.21.128)的my.cnf文件

| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |

Relay_Log_Pos: 253

| Variable_name | Value |

replicate-ignore-db=mysql #不等步mysql系统数据库

Replicate_Do_Table:

Master_SSL_Allowed: No

mysql> show master status;

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

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

:wq! #保存退出

grant replication slave on *.* to 'osyunweidbbak'@'192.168.21.129' identified by '123456' with grant option; #授权客户osyunweidbbak只可以从192.168.21.129以此IP访谈主服务器192.168.21.128下边包车型地铁数据库,而且只具有数据库备份的权能

Replicate_Ignore_DB: mysql

change master to master_host='192.168.21.128',master_user='osyunweidbbak',master_password='123456',master_log_file='mysql-bin.000011' ,master_log_pos=107; #履行同步语句

vi /etc/my.cnf #编写配置文件,在[mysqld]有的加多上面内容

mysql -u root -p #进入mysql控制台

show variables like 'server_id'; #查看server-id的值是还是不是为1

Master_Log_File: mysql-bin.000011

测量试验MySQL主从服务器是或不是健康运转

| server_id | 1 |

Skip_Counter: 0

grant all on osyunweidb.* to 'osyunweiuser'@'192.168.21.130' identified by '123456' with grant option; #授权顾客osyunweiuser从192.168.21.130通通访谈数据库,注意:这里的192.168.21.130是要连接数据库Web服务器IP

2、步入MySQL从服务器

mysql> show tables;

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

由来,Linux下MySQL数据库主从同步安插达成!

Until_Condition: None

192.168.21.128 Master

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

二、把MySQL主服务器192.168.21.12第88中学的数据库osyunweidb导入到MySQL从服务器192.168.21.129中

insert into mysql.user(Host,User,Password) values('localhost','osyunweidbbak',password('123456')); #建构MySQL主从数据库同步客户osyunweidbbak密码123456

1 row in set (0.00 sec)

mysql> show variables like 'server_id';

scp /home/osyunweidbbak.sql root@192.168.21.129:/home #把home目录下的osyunweidbbak.sql 数据库文件上传到MySQL从服务器的home目录下边

replicate-do-db=osyunweidb #亟待一块的数额库名,若是有两个数据库,可再度此参数,各类数据库风华正茂行

:wq! #封存退出

Master_Host: 192.168.21.128

binlog-ignore-db=mysql #不一样步mysql系统数据库

Slave_IO_Running: Yes

1 row in set (0.00 sec)

mysqldump -u root -p --default-character-set=utf8 --opt -Q -R --skip-lock-tables osyunweidb > /home/osyunweidbbak.sql #在MySQL主服务器进行操作,导出数据库osyunweidb到/home/osyunweidbbak.sql

Replicate_Ignore_Server_Ids:

binlog-do-db=osyunweidb #内需联合的数量库名,假使有八个数据库,可另行此参数,每种数据库风流倜傥行

read_only #设置数据库只读

Relay_Log_Space: 560

Slave_IO_Running: Yes

| test |

Master_SSL_Key:

Relay_Log_File: mysqlslave-relay-bin.000004

mysql -u root -p #进入MySQL控制台

四、配置MySQL从服务器(192.168.21.129)的my.cnf文件

use osyunweidb #跻身数据库

log-bin=mysql-bin #开发银行MySQ二进制日志系统,注意:假设原来的计划文件中早就有那大器晚成行,就毫无再增加了。

SHOW SLAVE STATUSG #翻开slave同步消息,现身以下内容

Exec_Master_Log_Pos: 107

| Variable_name | Value |

| Tables_in_osyunweidb |

mysql -u osyunweidbbak -h 192.168.21.128 -p #测量试验在从服务器上登入到主服务器

Slave_SQL_Running: Yes

Master_SSL_Cert:

source /home/osyunweidbbak.sql #导入备份文件到数据库

mysql -u root -p #进入MySQL控制台

Last_SQL_Errno: 0

slave start; #拉开slave同步进度

以下配置拷贝与网络

mysql>

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

测试篇

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

大器晚成、配置MySQL主服务器(192.168.21.128)

create database osyunweidb; #创建数量库osyunweidb

server-id=1 #设置服务器id,为1代表主服务器,注意:假诺原来的布署文件中大器晚成度有那后生可畏行,就不用再增多了。

约定:

Replicate_Ignore_Table:

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

Master_Port: 3306

Connect_Retry: 60

1、踏向MySQL主服务器(192.168.21.128)

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

use osyunweidb #跻身数据库

Master_SSL_CA_File:

flush privileges; #刷新系统授权表

Until_Log_File:

只顾查看:

server-id=2 #设置服务器id,改良其值为2,表示为从数据库

mysql -u root -p #跻身从服务器MySQL调控台

flush tables with read lock; #数据库只读锁定命令,幸免导出数据库的时候有数据写入

Replicate_Wild_Do_Table:

service mysqld restart #重启MySQL

如上那八个参数的值为Yes,即表达配置成功!

| mysql-bin.000011 | 107 | osyunweidb | mysql |

Master_SSL_CA_Path:

Master_User: osyunweidbbak

Relay_Master_Log_File: mysql-bin.000011

log-bin=mysql-bin #启航MySQ二进制日志系统,注意:假若原先的构造文件中已经有那生龙活虎行,就无须再增多了。

service mysqld restart #重启MySQL

unlock tables; #扑灭锁定

mysql> SHOW SLAVE STATUSG

insert into mysql.user(Host,User,Password) values('localhost','osyunweiuser',password('123456')); #创办客商osyunweiuser,密码123456

系统运营 www.osyunwei.com 温馨提示:qihang01原创内容 版权全部,转发请表明出处及最早的作品链接

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

Last_IO_Error:

Last_SQL_Error:

Master_SSL_Verify_Server_Cert: No

Master_SSL_Cipher:

备考:在导出早先能够先步入MySQL调控台实施上面三令五申

1 row in set (0.00 sec)

本文由澳门新葡萄京娱乐网站发布于MySQL数据库,转载请注明出处:mysql不难基本,完毕MySQL数据库主从服务器热备份

关键词:

上一篇:目录解说种类一索引概述
下一篇:没有了