エッセイ15_tww

1.フルバックアップにmysqldumpとxtrabackのどちらを使用するかをユーザーが選択できるようにするスクリプトを記述します。  

PS3 = "バックアップタイプを選択してください:";
mysqldumpxtrabackでタイプを選択します; 1で
$ REPLYを実行します

[- e / data / backup] || mkdir / data / backup
mysqldump -A --single-transaction -F | gzip> /data/backup/mysqldump_full_backup-$(date'+%Y%m%d-%H%M').sql.gz || (echo 'バックアップに失敗しました!' && exit 2)
echo'mysqldumpフルバックアップに成功しました! '
休憩
;;
2)
xtrabackup --backup --target-dir = / data / backup / xtra_full_backup-$(date '+%Y%m%d-%H%M')&> / dev / null || (echo 'バックアップに失敗しました!' && exit 2)
echo'xtrabackupフルバックアップに成功しました! '
休憩
;;
*)
echo "バックアップタイプの番号を入力してください"                                                                                            
esac
done

画像

2.Mysqlマスタースレーブ同期を構成します  

メインサーバーの構成(192.168.47.154):
1。構成ファイルを変更します
vim /etc/my.cnf
    server-id = 1
    log-bin = / var / lib / mysql / logbin_tao

2.systemctl restart mariadb

3.
「tao」で識別される「repluser」@「192.168.47。%」への*。*上のユーザー許可レプリケーションスレーブを作成します

4.バイナリログを表示する
MariaDB [mysql]>マスターログを表示する;
+ ------------------- + ----------- +
| Log_name | File_size |
+ ------------------- + ----------- +
| logbin_tao.000001 | 404 |
+ ------- ------------ + ----------- +
1行セット(0.00秒)


サーバーからの構成(192.168.47.101)
1。構成ファイルを変更します
vim /etc/my.cnf
    server-id = 2
    読み取り専用

2.MASTERを
        MASTER_HOST = '192.168.47.154'、
        MASTER_USER = 'repluser'、
        MASTER_PASSWORD = 'tao'、
        MASTER_PORT = 3306、
        MASTER_LOG_FILE = 'logbin_tao.000001、
        MASTER_LOG_POS = 404に変更します。

3.スレーブステータスを表示\ G

4.スレーブを開始します。

3. MHAを使用して、Mysqlの高可用性を実現します

1.準備:

1.)4つのホスト

192.168.47.100(maha-manager)

192.168.47.101(メインサーバー)

192.168.47.102(スレーブサーバー)

192.168.47.103(スレーブサーバー)

2.)時間同期、ファイアウォールオフ/ selinuxオフ

2.インストール  

centos7_2 [メインサーバー192.168.47.101]  

#1。データベースをインストールします

yum install mariadb-server -y

#2。構成ファイルを変更する

/etc/my.cnf

server-id = 2  

ログビン  

ship_name-解決  

systemctl restart mariadb

#3。アカウントを作成する

MariaDB [(none)]> *。*のレプリケーションスレーブを 'tao'で識別されるrepluser@'192.168.47。% 'に付与します。

MariaDB [(none)]> *。*のすべてを 'tao'で識別されるmhauser @ '192.168.47。%'に付与します。

        バイナリログを表示

        MariaDB [(none)]>マスターログを表示します。

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

                | Log_name | File_size |

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

                | mariadb-bin.000001 | 534 |

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

                セットの1行(0.00秒)

#4。mha4mysql-node-0.56-0.el6.noarch.rpmをインストールします

yum install mha * .rpm

centos7_3、centos7_4 [サーバー192.168.47.102、192.168.47.103から]  

#1。データベースをインストールします

yum install mariadb-server -y

#2。構成ファイルを変更する

/etc/my.cnf

server-id = 3  

ログビン  

読み取り専用  

skip_name_resolve  

relay_log_purge = 0  

server-id = 4  

ログビン  

読み取り専用  

skip_name_resolve  

relay_log_purge = 0  

systemctl restart mariadb

#3。コマンドを実行する

MariaDB [(なし)]>マスターをに変更

MASTER_HOST = '192.168.47.101'、

MASTER_USER = 'repluser'、

MASTER_PASSWORD = '人'、

MASTER_PORT = 3306、

MASTER_LOG_FILE = 'mariadb-bin.000001'、

MASTER_LOG_POS = 245;

ステータスを確認する

MariaDB [(なし)]>スレーブステータスを表示\ G

起動

MariaDB [(none)]>スレーブを開始します。

スレーブノードには読み取り専用属性があります

MariaDB [(none)]> 'read_only'のような変数を表示します。

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

        | Variable_name | 値|

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

        | read_only | オン|

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

        セット内の1行(0.06秒)

#4。mha4mysql-node-0.56-0.el6.noarch.rpmをインストールします

yum install mha * .rpm

maha-manager [192.168.47.100]  

#1。ドキュメントを準備する

mha4mysql-manager-0.56-0.el6.noarch.rpm  

mha4mysql-node-0.56-0.el6.noarch.rpm

#2。ソフトウェアをインストールする

yum install mha * .rpm [オープンepel  ソース]

#3。キーベースの検証

        (1)ssh-keygen

        [root @ mha-manager〜] #ls -a .ssh

         。.. id_rsa id_rsa.pub ..

        (2)ssh-copy-id 192.168.47.100(ローカルコンピューターのIP)

        cd .ssh

        [root @ mha-manager .ssh] #ls

        authorized_keys id_rsa id_rsa.pubknown_hosts

        (3)コピー

        scp -r .ssh 192.168.47.101:/ root /

        scp -r .ssh 192.168.47.102:/ root /

        scp -r .ssh 192.168.47.103:/ root /

        (4)テスト:

        ssh 192.168.47.101

        ssh 192.168.47.102

        ssh 192.168.47.103

#4。構成ファイルを作成する

mkdir / etc / mha /

vim /etc/mha/app1.cnf

------------------------

[サーバーのデフォルト]

user = mhauser

パスワード=人

manager_workdir = / data / mastermha / app1 /

manager_log = / data / mastermha / app1 / manager.log

remote_workdir = / data / mastermha / app1 /

ssh_user = root

repl_user = repluser

repl_password = person

ping_interval = 1

[server1]

ホスト名= 192.168.47.101

Candidate_master = 1

[server2]

ホスト名= 192.168.47.102

Candidate_master = 1

[server3]

ホスト名= 192.168.47.103  

#5。チェック

masterha_check_ssh --conf = / etc / mha / app1.cnf

画像  

masterha_check_repl --conf = / etc / mha / app1.cnf

画像  

#6。開始

masterha_manager --conf = / etc / mha / app1.cnf

画像

テスト

ビュー・ログ

画像

メインサーバー

データベースtaoを作成します。

テーブルtestlogを作成します(id int auto_incrementプライマリキー、name char(10)、age int default 20);

区切り文字$$

プロシージャsp_testlog()を作成し、iintを宣言し
始め 
ます。
i = 1に設定します。
i <= 100000の間
、testlog(name、age)値に挿入します(concat( 'wang'、i)、i);
セットi = i +1;
終了します。
end $$

区切り文字;

sp_testlogを呼び出します。

メインサービスコンピュータを直接シャットダウンします

画像

ビュー・ログ

画像

画像

画像

画像

メインサーバーとなるコンピューターの情報を表示する:[192.168.47.102]

画像

最後に、メインサーバーとなる構成ファイル/etc/my.cnfのread_onlyを削除します

おすすめ

転載: blog.51cto.com/14814545/2545938