MySQLの導入MySQLサーバのインストールここまでの段階で、MySQLのライブラリ関係はインストールされている。 mysql-libs.x86_64 5.5.36-1.el6.remi @remi compat-mysql51.x86_64 5.1.54-1.el6.remi @remi PHPと同様にRemiリポジトリを利用して、MySQLサーバなどのソフトウェアをインストールする。 # yum install --enablerepo=remi,epel mysql mysql-server mysql-devel mod_auth_mysql mysql-connector-odbc 依存関係のためいくつかのパッケージがインストールされる。 MySQLの設定設定ファイルを編集する。 # vi /etc/my.cnf 次のような設定を追加する。今回は、MySQLのバージョンが5.5(以上?)になっているはずなので、以前とはいくつか設定が変更されている。 [mysqld] character-set-server = utf8 skip-character-set-client-handshake old-passwords = 1 [mysqld_safe] character-set-server = utf8 [mysql] default-character-set = utf8 MySQLサーバの起動システムが起動するときに、MySQLも起動するようにする。 # chkconfig mysqld on # service mysqld start MySQLデータベースの初期設定MySQLサーバの初期設定データベースを初期化するには、 「mysql_install_db」コマンドを使用する# mysql_install_db
安全にデータベースを利用するために、
「mysql_secure_installation」というコマンドを使用する。
rootのパスワードなどを対話形式で設定できる。
# mysql_secure_installation
「mysql_secure_installation」というコマンドを使わない場合の手順もまとめておく。
まず、データベース管理者のパスワードを設定する。
# mysql -u root mysql> set password for root@localhost=password('パスワード'); mysql> set password for root@'127.0.0.1'=password('パスワード'); mysql> set password for root@'ホスト名'=password('パスワード'); 次に、匿名ユーザを削除する。 mysql> delete from mysql.user where user=''; 設定を確認する。 mysql> select user,host,password from mysql.user; ... mysql> flush privileges; ←設定を反映する。 mysql> exitあとはテスト用のデータベースを削除しておく。 データベースのアップデートMySQLをアップデートしたときに、データベースやテーブルを更新が必要な場合がある。 その場合は指定されたコマンドを使用する。使わないとえらいことになることも……# mysql_upgrade -u root -p
追記:php-mysqlndに関係した設定PHPを5.5にアップグレードしたときに、php-mysqlにかわって、php-mysqlndがインストールされた。MySQLのネイティブドライバである。
… PHP Warning: mysqli::mysqli(): The server requested authentication method unknown to the client [mysql_old_password] … Host 'hogehoge' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts' …まず1つ目のメッセージを、とりあえず、メッセージをそのままググると、こんな情報が…
# mysqladmin flush-hosts
これでようやく問題が解消。
参考 |