Mysql 資料庫熱備份

來源:互聯網
上載者:User

主從模式:

主伺服器server1:   192.168.1.20     Mysql 5.0   需要備份的資料庫 mydb

從伺服器server2:   192.168.1.22     Mysql 6.0  

1.備份現有資料:

最好先停止mysql service

使用[MysqlHome]:\bin\mysqldumple.exe工具 將現有資料備份成一個sql檔案:

d:\>cd [MysqlHome]

[MysqlHome]>cd bin

bin:\>mysqldumple  -u root -p mydb> d:\mydb.sql     //有自己寫的預存程序或函數時加上--routines 選項,否則預設不備份。另:在語句後面加';' 會導致db not found 報錯。

斷行符號輸入root使用者的密碼後資料庫就會被匯出到d:\mydb.sql 中

將mydb.sql COPY到server2 的D:\ 下

在mysql 下運行如下命令:

mysql> source mydb.sql

運行完成後資料就會被匯入到server2的mysql 中

2.授權:

server1上:

mysql>grant replication slave on *.* to user@'192.168.1.22' identified by 'pass'  註:6.0  中的使用者要加引號 'user'@''192.168.1.22'

授權server2 使用使用者名稱user 密碼pass 串連到server1進行資料備份

3.server1配置修改:

資料庫的備份是基於日誌複製機制。

server-id=1  //設定主伺服器的編號

log-bin =[log-name]  //設定記錄檔

binlog-do-db=[db-name]    //記錄日誌的資料庫

binlog-ignore-db=[db1,db2]   //不記錄日誌的資料庫

配置修改完成後重新啟動service

4.server2中的配置:

修改my.ini設定檔

在[mysqld] 後面添加如下兩行

server-id=2

replicate-do-db = mydb

在mysql  client中運行如下命令:

mysql> change master to master_host='192.168.1.20',master_user='user',master_password='pass',master_log_file='[log-name]',master_log_pos=[pos-val];

[log-name] 和[pos-val] 可以在server1中使用 show master status查看。

 重啟service

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.