MariaDB installation on SlackwareARM 15.0

Tech > SlackwareARM

内容

基本

SlackwareARMに限らず,Slackware (x86), Slackware64でも共通だと思います.Slackware的に全部rootで作業します.

mysql_install_db

次に,/var/lib/mysql内の所有者を全部mysql:mysqlにしておきます.

chown -Rv mysql:mysql /var/lib/mysql

そして,Slackwareの起動スクリプトを自動起動するようにして,デーモンも立ち上げます.

chmod -v a+x /etc/rc.d/rc.mysqld
/etc/rc.d/rc.mysqld  start

さらに,大甘のデフォルトのセキュリティーを修正します.

mysql_secure_installation

また,Slackwareの起動スクリプトはインストールしたままだとネット越しに接続できませんので,/etc/rc.d/rc.mysqld内のSKIPの定義をコメントアウトします.

# SKIP="--skip-networking"

移転

まあ,普通は新しいマシンにデータベースを動かしはじめて,ゼロからデータを入れていくってことはないでしょう.どこかで動いているデータベースを移転するかコピーするかします.

バイナリーでコピーしてみる

これがうまくいくと,楽だし完璧なクローニングができます.コピー元と,コピー先(インストール作業中のWS)の両方のmysqlデーモンをそれぞれroot権限で,

/etc/rc.d/rc.mysqld stop

として止めます.それで,tarでも,rsyncでもいいから,バイナリーで/var/lib/mysqlのディレクトリーごと,コピー先に移して展開します.

rsyncでクローニングしてうまくいきました.あとあと更新されたコピー元に追いつくために,rsyncのスクリプトを作っておくのが一番良いと思います.

例えばこんな感じです.

#!/bin/sh
cd /var/lib/mysql
rsync -artlvd --delete remote.host:/var/lib/mysql/ .

シンプルにしてますが,骨格はこんなもんです.テスト段階では,"-n"オプションを付けることをお薦めします😓 また,rootで,パスワードなしでコピー元ホストのrootssh接続できるようにid_rsa.pubauthenticate_usersにコピーしておくのが楽です.

正攻法でコピー

Plan Bです.

可読テキストにexportして,コピー先でimportするのが,一番まともな方法だと思います.ですが,バイナリーのコピーでうまくいったので試しません.