MySQL同步複製

來源:互聯網
上載者:User

標籤:local   mysql   

1、安裝cmake

tar zxvf cmake-2.8.11.2.tar.gz

cd cmake-2.8.11.2

./configure

make && make install


2、安裝mysql

groupadd mysql

useradd -g mysql mysql

tar zxvf mysql-5.5.11.tar.gz

cd mysql-5.5.11

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql/  -DMYSQL_DATADIR=/usr/local/mysql/data  -DWITH_INNOBASE_STORAGE_ENGINE=1  -DMYSQL_TCP_PORT=3306 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DMYSQL_UNIX_ADDR=/usr/local/mysql/data/mysql.sock  -DMYSQL_USER=mysql  -DWITH_DEBUG=0

make

make install


3、複製設定檔

cp support-files/my-medium.cnf /etc/my.cnf

cp support-files/mysql.server /etc/init.d/mysqld

chmod 755 /etc/init.d/mysqld


添加到開機啟動

chkconfig --add mysqld

chkconfig --level 2345 mysqld on

chkconfig --list mysqld


4、添加環境變數

vi /root/.bashrc

PATH=/usr/local/mysql/bin:${PATH}

export PATH


5、修改root密碼

mysql>use mysql ;

mysql>update user set password=PASSWORD("123456") where User=‘root‘;

mysql>FLUSH PRIVILEGES;


6、初始化資料庫

chmod 755 /usr/local/src/mysql/scripts/mysql_install_db

./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data


7、修改mysql中data目錄下的許可權

chown -R mysql.mysql data

service mysqld start


8、資料的匯入與匯出

匯入 :mysql --default-character-set=utf8 MAIN < MAIN.sql

匯出 :mysqldump --default-character-set=utf8 MAIN > MAIN.sql 


9、為master庫添加slave使用者,並設定密碼和存取權限

mysql>GRANT REPLICATION SLAVE ON *.* TO [email protected]"%" IDENTIFIED BY ‘123456‘;


10、修改slave庫中my.cnf檔案,添加server-id = slave主機號,重啟mysqld


11、show master status;查看master是否正常,找出File和Position

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

| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |

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

| mysql-bin.000006 |      1051 |              |                  |

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


12、在slave庫上執行

mysql>CHANGE MASTER TO MASTER_HOST=‘master ip地址‘,MASTER_USER=‘slave‘,MASTER_PASSWORD=‘slave‘,MASTER_LOG_FILE=‘master File‘,MASTER_LOG_POS=master Position;

mysql>FLUSH PRIVILEGES;


13、slave start

    show slave status


14、測試同步複製

在master任一庫中建立一張新表create table test (ename varchar(10));查看slave中是否同步出現此表。


15、遠程備份資料庫

在資料庫機器上開啟使用者存取權限,如slave使用者

mysql>GRANT ALL ON *.* TO [email protected]"%" IDENTIFIED BY ‘slave‘;

在本機環境上執行

mysqldump -uroot -p -h10.28.10.151 mysql > mysql.sql



問題:在啟動mysql時如果不成功,一般是data目錄的許可權問題,還有查看my.cnf設定檔中記憶體配置的大小。

mysql slave Error_code: 1062

針對5.1以前的版本,使用

slave stop;

set global sql_slave_skip_counter=n; \\ n=正整數,,看你的錯誤有幾條,就跳過幾條 

slave start;

針對5.1以上版本,有了變數設定了就不會出問題了,似乎比它以前的版本處理方式更人性化,不用skip.

SET GLOBAL SLAVE_EXEC_MODE = ‘IDEMPOTENT‘;


本文出自 “kimileonis” 部落格,請務必保留此出處http://kimileonis.blog.51cto.com/5531747/1538418

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.