Contents
1. DiCEのインストール
ネットが切断されたり、ルーターが切断再起動したときにおこるグローバルIPの変更の度に、ダイナミックDNSにアクセスしグローバルIPが変更されたことを知らせなくてはいけません。その作業を自動的にやってくれるのがDiCEです
1. 1 Diceのダウンロード、インストール
①ダウンロード
# cd /usr/local/bin/ # wget https://centos.rcg.jp/download/DiCE.tar.gz # tar -xzvf DiCE.tar.gz #cd /usr/local/bin/DiCE |
②DiCEの設定
DiCEの出力文字はEUCのため、文字化けしてしまう。
UTF-8に変換するために、nkfをインストールしておく
# apt-y install nkf |
#64bitOSで32bitソフトのDiceを動かすため
# apt install lib32stdc++6 |
③DiCEを起動する
# cd /usr/local/bin/DiCE # ./diced | nkf -uw |
1. 2 イベントの追加
DNSサービスはVALUEDOMAIN
# ./diced | nkf -uw : add DynamicDNSサービス名を入力してください “?”で対応しているサービスを一覧表示します (P)戻る >VALUEDOMAIN ドメイン名を入力してください “?”でドメイン一覧を表示します (P)戻る ><ドメイン名> ホスト名を入力してください (P)戻る ><ホスト名> ログインユーザ名を入力してください (P)戻る ><ユーザー名> ←VALUEDOMAINに登録したユーザー名 ログインパスワードを入力してください (P)戻る ><passwd> ←VALUEDOMAINにログインするパスワード 登録するIPアドレスを入力してください 空白にすると現在のIPアドレスを自動検出します (P)戻る >空白 このイベントに題名を付けてください (P)戻る >xxxxxxxxx(適当に付ける) 実行する頻度を指定してください (番号入力) (0)1回のみ (1)1日1回 (2)1週間に1回 (3)1ヵ月に1回 (4)その他の周期 (5)IPアドレス変化時 (6)起動時 (P)戻る >5 IPアドレスがあまり変化しない環境の場合、更新せずに一定期間を過ぎると アカウントを削除されてしまうことがあります IPアドレスの変化が無い時に実行する間隔を指定してください (0)7日毎 (1)14日毎 (2)21日毎 (3)28日毎 (4)35日毎 (5)56日毎 (6)84日毎 (P)戻る >0(任意に決める) このイベントを有効にしますか? (Y/N) (イベントの有効/無効は”EN/DIS”コマンドで切替えられます) >y イベントを保存しますか? (Y/N) >y |
1. 3 イベントの確認
: list (No.) (イベント名) (スケジュール) (次回予定) 0 * xxxxxxxxx IPアドレス変化時 (7日毎) 07/29 06:27ー 手動実行 :ex 0 + 7/22 6:33 にddns_valuedomainが実行されました IPアドレスを更新しました |
1. 4 Diceの自動実行
DiCEデーモンを起動する
# /usr/local/bin/DiCE/diced -d -l |
起動しているか確認
# ps aux | grep diced root 5346 12.2 0.0 5440 492 ? Ss 06:37 0:04 /usr/local/bin/DiCE/diced -d -l |
自動で起動するよう設定
# vi /etc/rc.local /usr/local/bin/DiCE/diced -d -l ←追加 |
/etc/rc.localがない場合
systemd になって、起動時に実行したいプログラムは、スクリプトを書いてサービスとして登録します。Debianの場合 /etc/rc.local を root で書いて実行ビットを立てておくと、rc-local というサービスによって自動的に実行されるようになっています。
/etc/rc.local新規作成する
# vi /etc/rc.local
#!/bin/sh
/usr/sbin/ethtool -s eno1 wol g
※ eno1は各自のネットワークインターフェース名(# ip addrで確認)
# chmod 700 /etc/rc.local
systemd になって、起動時に実行したいプログラムは、スクリプトを書いてサービスとして登録します。Debianの場合 /etc/rc.local を root で書いて実行ビットを立てておくと、rc-local というサービスによって自動的に実行されるようになっています。
/etc/rc.local新規作成する
# vi /etc/rc.local
#!/bin/sh
/usr/sbin/ethtool -s eno1 wol g
※ eno1は各自のネットワークインターフェース名(# ip addrで確認)
# chmod 700 /etc/rc.local
2. MySQL8.0への移行手順
旧サーバ MySQL5.6 データベース test-db データベースユーザー test-db-user
新サーバ MySQL8.0
2.1 新サーバでバックアップ
# mysqldump -u root -p [新パスワード] –all-databases –single-transaction |
2.2 旧サーバでの作業
①移行したいDBのdumpを取る
# mysqldump -u root -p –flush-logs test-db > test-db.sql |
②旧サーバのデータベースエンジンがMyISAMの場合、以下のコマンドでInnoDBに変換する必要がある
# sed -i ‘s/ENGINE=MyISAM/Engine=InnoDB/g’ test-db.sql |
③取得したdumpはrsyncやscpなどで新サーバに持っていく
2.3 新サーバでの作業
①移行予定である新規データベースを作成
# mysql -u root -p mysql mysql>create database test_db; MySQL8.0ではデータベース名に‐(ハイフン)が使えないので、_(アンダースコア)を使う |
②旧サーバーのデータベースを新サーバーに流し込む
# mysql -u root -p test_db < test-db.sql |
③データベースユーザーとパスワードを決め権限を与える
# mysql -u root -p mysql>create user test_db_user@localhost identified by ‘<PASSWD>‘; ※<PASSWD>は任意に決める mysql> grant all on test_db.* to ‘test_db_user’@’localhost’; mysql> flush privileges; mysql> exit |