UbuntuでMySQL5環境構築のまとめ
ネタもないので、今までMySQL関連で覚えた事をまとめてみます。内容としてはUbuntuマシンにMySQL5をインストールしてから、ユーザを作成して、外部SQL制御プログラムでSQL文を実行できるようになるまでの環境構築のまとめです。
ホスト環境
確認なのでUbuntu9.04をライブ起動させパスワードを設定&sshdをインストール。
本番はマシンにLinuxをインストールした環境でやるのでこの作業は不要です。
ubuntu@ubuntu:~$ passwd ubuntu(ライブ起動なのでやっておきます) ubuntu@ubuntu:~$ sudo apt-get install openssh-server(これ以降の作業をsshでやりたいので)
MySQLのインストール
aptでインストール
ubuntu@ubuntu:~$ sudo apt-get install mysql-server
インストール中にroot(MySQL内のroot)ユーザのパスワードを設定しろって言われるので設定する。
外部からの接続を許可する
MySQLをインストールしただけの状態では外部ホストからDBに接続できません。
リモートのSQL制御プログラムから接続できると便利だったり、JavaやPHP等のアプリケーションサーバと
マシンを分離させたい場合もあると思うので、127.0.0.1以外のアドレスからでも接続できるようにします。
ubuntu@ubuntu:~$ sudo vi /etc/mysql/my.cnf #「bind-address = 127.0.0.1」の行を#でコメントアウト ubuntu@ubuntu:~$ sudo /etc/init.d/mysql restart #MySQLの再起動
MySQLユーザの作成
rootユーザ以外にも、DB利用者用アカウントと外部SQL制御プログラム用アカウントを作成します
ubuntu@ubuntu:~$ mysql -u root -p Enter password: ****(インストール時に設定したパスワード) Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 33 Server version: 5.0.67-0ubuntu6 (Ubuntu) Type 'help;' or '\h' for help. Type '\c' to clear the buffer. # 何でも出来、ローカルからも外部ホストからも接続できるdbadminユーザ、パスワードあり mysql>GRANT ALL PRIVILEGES ON *.* TO dbadmin@localhost IDENTIFIED BY 'パスワード' WITH GRANT OPTION; mysql>GRANT ALL PRIVILEGES ON *.* TO dbadmin@"%" IDENTIFIED BY 'パスワード' WITH GRANT OPTION; # ローカルからのみ接続できるDB利用者ユーザ、パスワードなし mysql>GRANT USAGE ON *.* TO guest@localhost; # 撤退 mysql>exit
外部SQL制御プログラムを使用できるようにする
今回は外部SQL制御プログラムとして「かねやんMySQLAdmin」を使ってみます。
かねやんMySQLAdmin作者HPよりKMYSJIS143.lzhをダウンロード、MySQL公式HPよりmysql-5.1.41-win32.zipからダウンロードします。
次に両方解凍してKMYSJIS143\libmysql.dllをmysql-5.1.41-win32\bin\libmysql.dllで上書きします。(KMYSJIS143に最初から入ってるlibmysql.dllでは、ライブラリのバージョンが異なっているため接続できません)
これで接続できるようになったので、さっき作成したdbadminユーザで接続してみます。KMYSJIS143を起動して下のパラメータで接続できたら設定成功です。
ユーザ名:dbadmin パスワード:さっきのGRANT文で設定したパスワード ホスト名:今まで作業してたマシンのIPアドレス ポート番号:3306