真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

mysql主從庫(kù)怎么搭建 mysql主從架構(gòu)

MySql服務(wù)器怎么架設(shè)主從數(shù)據(jù)庫(kù)服務(wù)器呢?

大致步驟如下:主MySQL服務(wù)器:192.168.3.1備MySQL服務(wù)器:192.168.3.2配置文件路徑:/etc/my.cnfMySQL服務(wù)狀態(tài):停止-------------------------主服務(wù)器配置-------------------編輯配置文件:vi

為洮北等地區(qū)用戶提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及洮北網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為成都網(wǎng)站制作、成都做網(wǎng)站、洮北網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!

/etc/my.cnf找到[mysqld]在它下面添加內(nèi)容:server-id=1log-bin=backuplogbinlog-do-db=test#如果有多個(gè)數(shù)據(jù)庫(kù)需要同步,添加多行即可#binlog-do-db=test2保存my.cnf配置文件。啟動(dòng)mysql:service

mysqld

start用root登錄mysql,為同步數(shù)據(jù)創(chuàng)建新帳號(hào):grant

file,select,replication

slave

on

*.*

to

'test'@'%'

identified

by

'123456';------------------------備服務(wù)器配置-------------------------編輯配置文件:vi

/etc/my.cnf在[mysqld]下加入:server-id=2master-host=192.168.3.1master-user=testmaster-password=123456master-port=3306#replicate-do-db=test

#此配置項(xiàng)為設(shè)置僅同步的數(shù)據(jù)庫(kù)名,其它數(shù)據(jù)庫(kù)忽略(建議不設(shè)置此選項(xiàng))保存并啟動(dòng)mysql即可。如果需要查看同步狀態(tài),可分別在主從服務(wù)器上用如下命令查看:主服務(wù)器:show

master

status;從服務(wù)器:show

slave

status\G------------------值得說(shuō)明的兩個(gè)文件-----------------備份服務(wù)器上的/var/lib/mysql/目錄下有兩個(gè):master.info和relay-log.info它們記錄了主服務(wù)器的配置信息和同步信息,如果出現(xiàn)備份服務(wù)器不能同步數(shù)據(jù)的問(wèn)題,可嘗試將這兩個(gè)文件刪除,讓備服務(wù)器重新同步。備注:進(jìn)行操作之前先備份下數(shù)據(jù)比較保險(xiǎn)一點(diǎn)。

centos 怎么搭建mysql主從庫(kù)

在配置Mysql數(shù)據(jù)庫(kù)主從復(fù)制集群的時(shí)候要保證:

1.主從服務(wù)器操作系統(tǒng)版本和位數(shù)一致。

2.Mysql版本一致。

為了保證穩(wěn)定性,最好服務(wù)器操作系統(tǒng)和Mysql數(shù)據(jù)庫(kù)環(huán)境一致。

CentOS服務(wù)器上Mysql的安裝方法可以參見(jiàn)博客:

服務(wù)器配置:

Master:192.168.1.18

Slave:192.168.1.16

Master(192.168.1.18)服務(wù)器:

1.編輯/etc/my.cnf

[root@jhq0229 ~]# vim /etc/my.cnf

2.配置

[plain] view plain copy print?

[mysqld]

datadir=/data/mysql

socket=/var/lib/mysql/mysql.sock

user=mysql

#主從復(fù)制配置

innodb_flush_log_at_trx_commit=1

sync_binlog=1

#需要備份的數(shù)據(jù)庫(kù)

binlog-do-db=orders

#不需要備份的數(shù)據(jù)庫(kù)

binlog-ignore-db=mysql

#啟動(dòng)二進(jìn)制文件

log-bin=mysql-bin

#服務(wù)器ID

server-id=1

# Disabling symbolic-links is recommended to prevent assorted security risks

symbolic-links=0

[mysqld_safe]

log-error=/var/log/mysqld.log

pid-file=/var/run/mysqld/mysqld.pid

若沒(méi)有配置binlog-do-db和binlog_ignore_db,表示備份全部數(shù)據(jù)庫(kù)。

3.重啟Mysqld服務(wù)

[root@jhq0229 ~]# service mysqld restart

4.為從Mysql創(chuàng)建用戶

登錄

[root@jhq0229 ~]# mysql -uroot -p

Enter password:

創(chuàng)建用戶

mysql create user 'mastj'@'192.168.1.16' identified by '123456';

配置主從復(fù)制權(quán)限

mysql grant replication slave on *.* to 'mastj'@'192.168.1.16' identified by '123456';

若orders數(shù)據(jù)庫(kù)中已經(jīng)有數(shù)據(jù),還需要:

鎖定數(shù)據(jù)庫(kù)

mysql flush tables with read lock;

將數(shù)據(jù)導(dǎo)入到從數(shù)據(jù)庫(kù),方法有多種,我是用Navicat復(fù)制的,復(fù)制完成后:

查看master狀態(tài)并解鎖:

[html] view plain copy print?

mysql show master status;

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

| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |

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

| mysql-bin.000003 | 2005 | orders | mysql | |

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

1 row in set (0.00 sec)

mysql unlock tables;

Slave(192.168.1.16)服務(wù)器:

1.配置服務(wù)ID

[root@jhq0113 ~]# vim /etc/my.cnf

在[mysqld]下面加入

server-id=2

重啟Mysql服務(wù)

[root@jhq0113 ~]# service mysqld restart

2.配置復(fù)制

登錄mysql

[root@jhq0113 ~]# mysql -uroot -p

執(zhí)行

mysql change master to master_host='192.168.1.18',

master_user='mastj',

master_password='123456',

master_port=3306,

master_log_file='mysql-bin.000003',

master_log_pos=2005,

master_connect_retry=10;

參數(shù)詳解:

master_host:主服務(wù)器的IP。

master_user:配置主服務(wù)器時(shí)建立的用戶名

master_password:用戶密碼

master_port:主服務(wù)器mysql端口,如果未曾修改,默認(rèn)即可。

master_log_file:日志文件名稱,填寫查看master狀態(tài)時(shí)顯示的File

master_log_pos:日志位置,填寫查看master狀態(tài)時(shí)顯示的Position

master_connect_retry:重連次數(shù)

啟動(dòng)進(jìn)程

mysql start slave;

檢查主從復(fù)制狀態(tài)

[plain] view plain copy print?

mysql show slave status\G

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

Slave_IO_State: Waiting for master to send event

Master_Host: 192.168.1.18

Master_User: mastj

Master_Port: 3306

Connect_Retry: 10

Master_Log_File: mysql-bin.000003

Read_Master_Log_Pos: 2369

Relay_Log_File: jhq0113-relay-bin.000002

Relay_Log_Pos: 647

Relay_Master_Log_File: mysql-bin.000003

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

若Slave_IO_Running和Slave_SQL_Running均為Yes,則表示連接正常。

此時(shí)就可以測(cè)試主從復(fù)制了。

如何在一臺(tái)windows主機(jī)上搭建mysql主從配置

先在主數(shù)據(jù)庫(kù)中創(chuàng)建新數(shù)據(jù)庫(kù)rep_test。

然后編輯主數(shù)據(jù)庫(kù)的my.ini文件

在[mysqld]節(jié)點(diǎn)中增加如下內(nèi)容:

server-id=1

#指定唯一的ID,1至32,必須的

log-bin=mysql-log-bin

#指定二進(jìn)制日志存放路徑,必須的

binlog-do-db=rep_test

#指定要同步的數(shù)據(jù)庫(kù),必須的

#binlog-ignore-db=mysql

#指定不要同步的數(shù)據(jù)庫(kù),如果指定了binlog-do-db就不用再指定該項(xiàng)

重啟主數(shù)據(jù)庫(kù),然后在主數(shù)據(jù)庫(kù)中建立一個(gè)備份賬戶

mysqlgrant

replication

slave

on

*.*

to slave@192.168.1.128

identified

by

'slave'

;

mysqlflush

privileges;

PS:identified

by

指定的slave是賬號(hào)slave@192.168.1.128

的密碼

顯示主服務(wù)器的狀態(tài)信息,并且找到File

Position

的值記錄下來(lái);

mysqlshow

master

status;

在從數(shù)據(jù)庫(kù)中創(chuàng)建新的數(shù)據(jù)庫(kù)rep_test。

然后編輯從數(shù)據(jù)庫(kù)的my.ini文件

在[mysqld]節(jié)點(diǎn)中增加如下內(nèi)容:

server-id=2

#指定唯一的ID,2至32,必須的,并且不能跟主數(shù)據(jù)庫(kù)一樣

replicate-do-db=rep_test

#指定要同步的數(shù)據(jù)庫(kù),必須的

#replicate-ignore-db=mysql

#指定不要同步的數(shù)據(jù)庫(kù),

重啟從數(shù)據(jù)庫(kù),設(shè)置登錄主數(shù)據(jù)庫(kù)的賬號(hào)和密碼等信息,然后啟動(dòng)slave

mysqlchange

master

to

master_host='192.168.1.2',master_user='slave',master_password='slave',

master_log_file='mysql-bin.000002',master_log_pos=120;

mysqlstart

slave;

查看從數(shù)據(jù)庫(kù)的信息

mysqlshow

slave

status

\G;

如果出現(xiàn): Slave_IO_Running:

YesSlave_SQL_Running:

Yes以上兩項(xiàng)都為Yes,那說(shuō)明沒(méi)問(wèn)題了

測(cè)試主從復(fù)制是否有效果

在主數(shù)據(jù)庫(kù)中創(chuàng)建一個(gè)新的數(shù)據(jù)庫(kù),然后再切換到從數(shù)據(jù)庫(kù)查看是否同樣多出通名的數(shù)據(jù)庫(kù)

配置舊數(shù)據(jù)庫(kù)的主從復(fù)制

如果一開(kāi)始數(shù)據(jù)庫(kù)的架構(gòu)不是主從復(fù)制,并且運(yùn)行一段時(shí)間后已經(jīng)有數(shù)據(jù)存在,那配置的方式略有不同。

編輯主數(shù)據(jù)庫(kù)的my.ini文件,加上一下內(nèi)容:

binlog-do-db=landclash

重啟主數(shù)據(jù)庫(kù),然后在主數(shù)據(jù)庫(kù)中鎖定所有的表

mysqlflush

tables

with

read

lock;

顯示主服務(wù)器的狀態(tài)信息,并且找到File

Position

的值記錄下來(lái);

mysqlshow

master

status;

將主數(shù)據(jù)庫(kù)data目錄下需要做主從復(fù)制的數(shù)據(jù)庫(kù)的同名目錄拷貝到從數(shù)據(jù)庫(kù)的data目錄下

編輯從數(shù)據(jù)庫(kù)的my.ini文件,加上一下內(nèi)容:

replicate-do-db=landclash

重啟從數(shù)據(jù)庫(kù),因?yàn)橹鲾?shù)據(jù)庫(kù)在重新配置my.ini后,日志文件變成新的文件,所以需要再次設(shè)置登錄主數(shù)據(jù)庫(kù)的賬號(hào)和密碼等信息

mysqlstop

slave;

mysqlchange

master

to

master_host='192.168.1.2',master_user='slave',master_password='slave',

master_log_file='mysql-bin.000003',master_log_pos=120;

mysqlstart

slave;

再次輸入查看從數(shù)據(jù)庫(kù)狀態(tài)的命令

mysqlshow

slave

status

\G;

完成上述配置后,回到主數(shù)據(jù)庫(kù),將表解鎖

mysqlunlock

tables;

之后在主數(shù)據(jù)庫(kù)的修改就能同步到從數(shù)據(jù)庫(kù)上了。


本文題目:mysql主從庫(kù)怎么搭建 mysql主從架構(gòu)
文章轉(zhuǎn)載:http://weahome.cn/article/hpjsjs.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部