mysqlプライマリ・スレーブ・レプリケーションの簡単な構成

2021 ワード

0.環境:
master:windows7,mysql5.5
slave:centos6.5(仮想マシン)、mysql 5.1
1.centos 6.5 mysqlのインストールと簡単な構成
yum install -y mysql-server mysql mysql-devel

このようにインストールされているのはmysql 5である.バージョン1
そして
 cd /usr/share/doc/mysql-server-5.1.73/
 cp my-large.cnf  /etc/my.cnf
 vi /etc/my.cnf

[mysqld]で次のように追加します.
 default-character-set=utf8
 default-storage-engine=INNODB
 lower_case_table_names=1

[クライアント]で次の項目を追加します.
default-character-set=utf8

server-idを検索して2(masterと同じではいけません)に変更し、なければ自分で行を追加します.
mysqlを起動します
service mysqld start

rootユーザーのパスワードを変更します.デフォルトは空です.
 mysqladmin -u root password 'root'

次にログインします.
mysql -u root -p

他のマシンがrootユーザーでログインできるようにします.
GRANT ALL ON *.* TO 'root'@'%' identified by 'root' WITH GRANT OPTION;

2.windowsでのmasterの構成
my.iniの末尾に次のように記入します.
#Master Config
server-id = 1
log-bin = mysql-bin
binlog-do-db = test
binlog-ignore-db = mysql

注意slaveの構成にもserver-idが1つありますが、この2つは繰り返さないでください
log-binログタイプの指定
binlog-do-dbは、コピーする必要があるデータベース名です.複数ある場合はカンマ「,」で区切ります.
binlog-ignore-dbは、コピーする必要のないデータベース名であり、複数ある場合はカンマ","で区切られます.
mysqlを再起動します
net stop mysql
net start mysql

マスターのステータスを表示できます
show master status;

レプリケーション用にslaveという名前とパスワードを持つユーザーを作成します.
3.linuxでのslaveの構成
2つの方法があります.
1つは直接変更/etc/my.cnf
もう1つはコマンドでmysqlを再起動しなくてもいいです
ここでは、コマンドの方法を使用します.
change master to master_host='192.168.35.145', 
master_port=3306,
master_user='slave',
master_password='slave'

そして
start slave

slaveステータスの表示
show slave status

これはmasterのtestデータベースがslaveに同期して、自分で検証することができます
後でmasterの中の修正はすべて自動的にslaveに同期します