Pleskの確か Ver.8 あたりから、別サーバにあるDBを管理することができるようになっている。
目次
[DBサーバ側の設定]
DB接続の設定をしたいPleskのあるサーバのローカルIPアドレスからDBサーバへのアクセスができるように権限設定する。
これは特殊なことではなく、Web・DBサーバを別のサーバでやる場合、普通にMySQLの設定でやっていることです。
DBサーバで以下のSQLを実行
GRANT ALL PRIVILEGES ON *.* TO 'ユーザ'@'ホスト' IDENTIFIED BY 'パスワード' WITH GRANT OPTION;
・ユーザはPleskに設定するユーザ(root でもいいがセキュリティレベルは考えること)
・ホストはPleskのローカルIP
[Pleskの設定]
Pleskにログインし、【サーバ】→【データベース管理】あたりから、上記で設定したDBユーザでDBサーバを追加することで、各ドメインの管理メニューにあるDB作成からDBが作れるようになる。
この設定後から、新規にDBを作成するのであればこれで完了。
が、既存DBは見えないのでどうにか見えるようにする方法は以下。 SSH接続などでPleskサーバのMySQLのDB「psa」に接続、編集できること前提。 ★非推奨:Pleskの管理DB自体を手動でいじります。整合性を崩す恐れがあります。
[DBサーバ上の既存DBを管理できるようにする場合]
(前提:正しいかどうかは不明だが、どうやらこう動いている、というレベル)
- psa
- Plesk自体の管理用DB名
- DatabaseServers
- そのPleskから管理できるDBサーバの管理テーブル
- db_users
- 各ドメインで設定したDBユーザの管理テーブル
- data_bases
- 各ドメインで設定したDBの管理テーブル
(DB名・DBユーザ名・DBサーバの紐づけが行われている)
- Plesk上のドメインからローカルにダミーDB、ダミーDBユーザを作成
- その際、DBサーバにあるDB用のユーザ、パスワードで設定しておくと楽
- この時点でローカルサーバのDBに指定したDB・ユーザが作成されるので作業完了後それらを削除する
- 以下SSHを利用して mysql で接続後のイメージ
- Plesk 管理DBへ接続
- 接続先になるDBサーバのIDを確認(初めてならおそらく2)
- ダミーで作ったユーザのユーザIDを確認
- ダミーで作ったユーザを正しいDB接続ユーザ名に変更
- ダミーで作ったDBのIDを確認、接続先DBのサーバIDがあるはず
- ユーザと同様に、DB名と2.-2.で確認したサーバIDへ更新
- 1.でPlesk上から作成したダミーDB、ユーザを削除
use psa
select * from DatabaseServers;
select * db_users;
update db_users set name='正しいユーザ名' where id=上で確認したダミーユーザのユーザID;
select * from data_bases;
で扱えるはずです。
細かい間違いはあるかもしれませんが、大きな流れはこれであっているはず。
いうまでもなく無保証です。