A. 怎麼查看linux mysql 主從復制 連接成功
MySQL是開源的關系型資料庫系統。復制(Replication)是從一台MySQL資料庫伺服器(主伺服器master)復制數據到另一個伺服器(從伺服器slave)的一個進程。
配置主伺服器(master)
1、編輯資料庫配置文件my.cnf,一般在/etc/目錄下。
#vi /etc/my.cnf
在[mysqld]的下面加入下面代碼:
log-bin=mysql-bin
server-id=1
innodb_flush_log_at_trx_commit=1
sync_binlog=1
binlog-do-db=wordpress
binlog_ignore_db=mysql
server-id=1中的1可以任定義,只要是唯一的就行。
binlog-do-db=wordpress是表示只備份wordpress。
binlog_ignore_db=mysql表示忽略備份mysql。
不加binlog-do-db和binlog_ignore_db,那就表示備份全部資料庫。
2、然後重啟MySQL:
#service mysqld restart
3、登錄MySQL伺服器。
#mysql -uroot -p
在主伺服器新建一個用戶賦予「REPLICATION SLAVE」的許可權。你不需要再賦予其它的許可權。在下面的命令,把X.X.X.X替換為從伺服器的IP。
mysql>CREATE USER 'user'@ 'X.X.X.X' IDENTIFIED BY 'password';
mysql>GRANT REPLICATION SLAVE ON *.* TO 'user'@'X.X.X.X' IDENTIFIED BY 'password';
4、執行以下命令鎖定資料庫以防止寫入數據。
mysql>FLUSH TABLES WITH READ LOCK;
5、退出mysql命令行,導出資料庫
#mysqlmp -u root -p123456 --all-databases --lock-tables=false -- > /root/all.sql
6、使用scp命令傳輸資料庫文件all.sql到從伺服器。
#scp /root/all.sql [email protected]:/root
7、再次連接資料庫進入mysql命令行查看master狀態。
mysql>SHOW MASTER STATUS;
請記下顯示的信息,配置從伺服器會用到。
+——————+———-+————–+——————+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+——————+———-+————–+——————+
| mysql-bin.000003 | 1001741 | dbispconfig | mysql |
+——————+———-+————–+——————+
1 row in set (0.00 sec)
8、解鎖數據表。
mysql>UNLOCK TABLES;
配置從伺服器(slave)
登錄從伺服器。
1、導入主伺服器的資料庫。
#mysql -u root -p123456 < /root/all.sql
2、編輯配置文件my.cnf,在[mysqld]下面加入:
server-id=2
2可以自己定義,只要保證唯一的就行。
3、保存文件並重啟mysqld。
#service mysqld restart
4、登錄mysql伺服器,執行以下命令。
mysql>CHANGE MASTER TO
MASTER_HOST='X.X.X.X',
MASTER_USER='user',
MASTER_PASSWORD='password',
MASTER_PORT=3306,
MASTER_LOG_FILE='mysql-bin.000001',
MASTER_LOG_POS=98,
MASTER_CONNECT_RETRY=10;
MASTER_HOST:主伺服器的IP。
MASTER_USER:配置主伺服器時建立的用戶名
MASTER_PASSWORD:用戶密碼
MASTER_PORT:主伺服器mysql埠,如果未曾修改,默認即可。
5、啟動slave進程。
mysql>START SLAVE;
6、查看mysql的日誌,一般在/var/log/目錄下的mysqld.log,如果啟動成功,你應該會看到類似下面的日誌。
[root@localhost ~]# vi /etc/my.cnf
091104 8:42:02 [Note] Slave I/O thread: connected to master 『[email protected]:3306?, replication started in log 『mysql-bin.000001? at position 98
現在主伺服器和從伺服器已經配置好了。另外你可能需要設置主伺服器的資料庫二進制日誌的過期時間,可以在配置文件中使用參數expire_logs_days來設定。
B. linux主從伺服器模式的配置方法
比如集群,那是同時的;
服務的話比如DNS是設置的,域伺服器有PDA、BDA,
你說的是啥服務,對外還是對內的,對內的可以說訪問A失敗就去訪問B,有個韓國的服裝企業就是用的集群。
C. 一台linux伺服器怎麼安裝多個mysql資料庫並配置主從
1、關閉Liunx系統的防火牆,如果忘了,你下面的測試連接必定會失敗,切記,切記,切記。
2、yum安裝lrzsz和cmake
yum -y install lrzsz;
yum -y install cmake;
首先熟悉MySql資料庫,很多人都是直接安裝原生版的MySql資料庫(就是官網上下載的資料庫安裝包),也有人用的是MySql的衍生版資料庫,如percona,我用的就是這種,下面我會分別說明原生版和衍生版MySql資料庫的安裝和主從配置。
D. linux mysql主從同步怎麼辦
1.編輯my.cnf(命令查找文件位置:find / -name my.cnf)
vi /etc/mysql/my.cnf
在[mysqld]中添加:
server-id = 1
log_bin = master-bin
log_bin_index = master-bin.index
binlog_do_db = my_data
binlog_ignore_db = mysql
備註:server-id 伺服器唯一標識,log_bin 啟動MySQL二進制日誌,binlog_do_db 指定記錄二進制日誌的資料庫,binlog_ignore_db 指定不記錄二進制日誌的資料庫。
E. linux mysql5.1.73怎麼做主從復制
首先,我們大概羅列一下主從復制的基本步驟,(MySQL主從首先需要在各自伺服器配置好)。1.復制資料庫。mysqlmp--master-data--single-transaction-R--databases[db_name]|gzip-9-|pv>all-db-with-master-data.sql.gz注意:innodb用–single-transaction,myisam需要用–lock-all-tables。2.復制,導入數據。pvnewdb.sql3.主伺服器上,修改my.cnf文件,添加新庫到binlog-do-db參數,重啟mysql。4.在導出的newdb.sql裡面查找當前的日誌文件以及位置(changemasterto…)然後讓slave伺服器執行到這個位置。startslaveuntilMASTER_LOG_FILE="mysql-bin.000001",MASTER_LOG_POS=1222220;其中MASTER_LOG_FILE以及MASTER_LOG_POS在導出的資料庫newdb.sql頂部位置查找。4.導入新庫到從伺服器上。mysql
F. Linux 主從DNS伺服器的問題
你是指客戶端的主從還是伺服器端的主從?
客戶端的主從是指設置ip的時候設置兩個dns,其中一個壞了,另一個可以生效。
如果是伺服器端的需要用到負載均衡軟體,實現自動切換。
G. linux換進怎麼配置mysql主從伺服器
展開全部
linux下配置mysql主從同步的步驟
一、主機環境
主機:
master操作系統:rhel6.0
IP:172.16.0.100
MySQL版本:5.1.47
從機:
www.2cto.com
slave操作系統:rhel6.0
IP:172.16.0.200
MySQL版本:5.1.47
二、創建資料庫
分別登錄master機和slave機的mysql:mysql
–u
root
–p
創建資料庫:create
database
repl;
三、master機和slave機的相關配置
1、修改master機器中mysql配置文件my.cnf,該文件在/etc目錄下
在[mysqld]配置段添加如下欄位
server-id=1
log-bin=mysql-bin
binlog-do-db=repl
//需要同步的資料庫,如果沒有本行,即表示同步所有的資料庫
binlog-ignore-db=mysql
//被忽略的資料庫
在master機上為slave機添加一同步帳號
grant
replication
slave
on
*.*
to
'replication'@'172.16.0.200'
identified
by
'123456';
重啟master機的mysql服務:service
mysqld
restart
用show
master
status
命令看日誌情況
H. 怎麼在一台linux伺服器上主從資料庫
你確定是在一台伺服器上,實現資料庫的主從配置嗎?
我知道兩台或者三台怎麼配置,從來沒有在一台上實現過。如果知道,請通知我一下。
I. linux怎麼配置dns緩存伺服器和主從伺服器
BIND安裝
軟體下載地址:http://www.isc.org/software/bind,目前最新版本是BIND 9.8.1-P1。
安裝依賴:
yum -y install gcc openssl-devel
開始安裝bind.
wget ftp://ftp.isc.org/isc/bind9/9.8.1-P1/bind-9.8.1-P1.tar.gz
tar xzf bind-9.8.1-P1.tar.gz
cd bind-9.8.1-P1
./configure --prefix=/usr/local/bind
make && make install
執行完成後,bind已經安裝到了/usr/local/bind目錄。
配置主dns伺服器
配置bind主要是兩種文件,一是主配置文件named.conf,二是區域文件zone(包括正解析,反解析)。
在下面的配置中,我們的主dns伺服器是ns1.qbtop.com 23.19.81.191,從dns伺服器是ns2.qbtop.com 23.19.81.194(這兩個dns都已經在godaddy注冊好了)。
下面操作僅在主dns伺服器23.19.81.191執行。
主配置文件named.conf
首先執行rndc-confgen -a生成/etc/rndc.key密鑰文件。
/usr/local/bind/sbin/rndc-confgen -a
vi /usr/local/bind/etc/named.conf
寫入如下內容:
include "/usr/local/bind/etc/rndc.key";
controls { inet 127.0.0.1 port 953 allow { 127.0.0.1; } keys { "rndckey"; }; };
logging {
channel default_syslog { syslog local2; severity notice; };
channel audit_log { file "/var/log/bind.log"; severity notice; print-time yes; };
category default { default_syslog; };
category general { default_syslog; };
category security { audit_log; default_syslog; };
category config { default_syslog; };
category resolver { audit_log; };
category xfer-in { audit_log; };
category xfer-out { audit_log; };
category notify { audit_log; };
category client { audit_log; };
category network { audit_log; };
category update { audit_log; };
category queries { audit_log; };
category lame-servers { audit_log; };
};
options {
directory "/usr/local/bind/etc";
pid-file "/usr/local/bind/var/run/bind.pid";
transfer-format many-answers;
interface-interval 0;
allow-query { any; };
};
zone "qbtop.com" {
type master;
file "qbtop.com.zone";
allow-transfer { 23.19.81.194; };
};
zone "81.19.23.in-addr.arpa" {
type master;
file "81.19.23.in-addr.arpa";
allow-transfer { 23.19.81.194; };
};
named.conf文件說明:
上面的named.conf文件包括三部分:key,controls,logging,options,zone。
logging:設置日誌伺服器和日誌信息的發送地。
options:控制伺服器的全局配置選項和為其它語句設置默認值
zone:定義一個域,比如正解析域和反解析域。
logging是定義日誌的,不需要深究,主要是options和zone。
在options中:
directory "/usr/local/bind/etc":定義bind的工作目錄為/usr/local/bind/etc,配置文件中所有使用的相對路徑,指的都是在這里配置的目錄下。
pid-file "/usr/local/bind/var/run/bind.pid":把bind程序運行的pid寫入文件bind.pid。
transfer-format many-answers:使用更加有效的域傳輸格式many-answers。
allow-query { any; }:允許所有用戶查詢dns。
在zone中:
這里定義了兩個zone,一個是正解析zone qbtop.com,一個是反解析zone 81.19.23.in-addr.arpa。
他們的參數基本相同:
type master:定義dns伺服器為主dns。
file "qbtop.com.zone":定義此zone的文件名。
allow-transfer { 23.19.81.194; }:允許向從dns 23.19.81.194傳輸dns數據。
唯一不同的是zone名稱的定義,正解析zone名稱的定義是受權的域名,可以是頂級域名,也可以是二級域名,或多級。反解析zone名稱定義規定前部分ip倒著寫。如ip 192.168.1.2,名稱定義為1.168.192.in-addr.arpa。
正解析qbtop.com.zone
vi /usr/local/bind/etc/qbtop.com.zone
寫入如下內容:
$TTL 3600
@ IN SOA ns1.qbtop.com. hostmaster.qbtop.com. (
2012022301 ; Serial
3600 ; Refresh
900 ; Retry
3600000 ; Expire
3600 ) ; Minimum
@ IN NS ns1.qbtop.com.
@ IN NS ns2.qbtop.com.
ns1 IN A 23.19.81.191
ns2 IN A 23.19.81.194
aaa IN A 23.19.81.191
bbb IN A 23.19.81.191
文件說明:
$TTL 3600:指示為每個沒有特殊TTL設置的RR給出了一個默認的TTL。
@ IN SOA ns1.qbtop.com. hostmaster.qbtop.com. (
2012022301 ; Serial
3600 ; Refresh
900 ; Retry
3600000 ; Expire
3600 ) ; Minimum
定義SOA記錄,包括Zone的名字,一個技術聯系人和各種不同的超時值。
@ IN NS ns1.qbtop.com.
@ IN NS ns2.qbtop.com.
設置兩個ns記錄ns1.qbtop.com和ns2.qbtop.com。
ns1 IN A 23.19.81.191
ns2 IN A 23.19.81.194
aaa IN A 23.19.81.191
bbb IN A 23.19.81.191
設置主機為ns1,ns2,aaa和bbb的A記錄。
反解析文件81.19.23.in-addr.arpa
反解析zone可以不設置。
vi /usr/local/bind/etc/81.19.23.in-addr.arpa
寫入如下內容:
$TTL 3600
@ IN SOA ns1.qbtop.com. hostmaster.qbtop.com. (
2012022301 ; Serial
3600 ; Refresh
900 ; Retry
3600000 ; Expire
3600 ) ; Minimum
@ IN NS ns1.qbtop.com.
@ IN NS ns2.qbtop.com.
191 IN PTR ns1.qbtop.com.
194 IN PTR ns2.qbtop.com.
說明:
上部分是定義SOA記錄,下部分是設置IP反解析。
如設置IP 23.19.81.191反解析成ns1.qbtop.com,23.19.81.194反解析成ns2.qbtop.com。
配置從DNS伺服器
下面我們來配置從DNS伺服器。配置從DNS伺服器只需要配置主配置文件named.conf,zone文件不需配置,因為這是從主DNS伺服器獲取的。
首先建立目錄slaves用來存放從主dns獲取的zone文件。
mkdir /usr/local/bind/etc/slaves
寫入如下內容:
logging {
channel default_syslog { syslog local2; severity notice; };
channel audit_log { file "/var/log/bind.log"; severity notice; print-time yes; };
category default { default_syslog; };
category general { default_syslog; };
category security { audit_log; default_syslog; };
category config { default_syslog; };
category resolver { audit_log; };
category xfer-in { audit_log; };
category xfer-out { audit_log; };
category notify { audit_log; };
category client { audit_log; };
category network { audit_log; };
category update { audit_log; };
category queries { audit_log; };
category lame-servers { audit_log; };
};
options {
directory "/usr/local/bind/etc";
pid-file "/usr/local/bind/var/run/bind.pid";
transfer-format many-answers;
interface-interval 0;
allow-query { any; };
};
zone "qbtop.com" {
type slave;
file "slaves/qbtop.com.zone";
masters { 23.19.81.191; };
};
zone "81.19.23.in-addr.arpa" {
type slave;
file "slaves/81.19.23.in-addr.arpa";
masters { 23.19.81.191; };
};
文件說明:
從dns跟主dns主要的區別是zone的定義,type slave定義此dns伺服器為從dns,masters { 23.19.81.191; }定義主dns的IP。
啟動BIND
1、在啟動BIND之前,我們需要執行/usr/local/bind/sbin/named-checkconf檢查named.conf配置文
件,和執行/usr/local/bind/sbin/named-checkzone zone名稱
zone文件名,如/usr/local/bind/sbin/named-checkzone qbtop.com
/usr/local/bind/etc/qbtop.com.zone。
然後調試模式啟動bind,/usr/local/bind/sbin/named -g,g參數的意思是前台執行bind,這會輸出啟動的信息,發現沒有嚴重的錯誤後,再把g參數刪除重新以/usr/local/bind/sbin/named方式後台啟動bind。
2、設置開機啟動,在/etc/rc.d/rc.local中加入/usr/local/bind/sbin/named。
手動添加記錄
1、直接添加刪除或修改zone文件里的記錄
2、執行rndc reload zone名稱重載,如rndc reload qbtop.com