MySQLインストール・設定
※CentOS7関連のインストール・設定については「CentOSで自宅サーバー様」を参考に自分の環境に合わせて設定しています。
●CentOS7にデフォルトで入っているMariaDBをアンインストール
# yum -y remove mariadb
# yum -y remove mariadb-libs
●MySQL公式リポジトリファイルをインストール
# yum -y install http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
●MySQLインストール
# yum -y install mysql
# yum -y install mysql-devel
# yum -y install mysql-server
# yum -y install mysql-utilities
●mysql起動、systemctlに登録
# service mysqld start
●mysqld自動起動設定
# systemctl enable mysqld
●DB初期設定
# /usr/bin/mysql_secure_installation
1. Enter current password for root (enter for none): ← [Enter]
2. Set root password? [Y/n] ← 「Enter] rootのパスワード設定
New Password: ← パスワード入力
Re-enter new password: ← パスワード再入力
3. Remove anonymous users? [Y/n] ← 「Enter] 匿名ユーザ削除
4. Disallow root login remotely? [Y/n] ← [Enter] リモートからのrootログイン禁止
5. Remove test database and access to it? [Y/n] ← [Enter] テスト用データベースを削除
6. Reload privilege tables now? [Y/n] ← [Enter] 設定反映
●MySQLの文字コードをUTF-8に変更
# vi /etc/my.cnf
[mysqld]の最下行に以下を追加
character_set_server=utf8
skip-character-set-client-handshake
MySQL再起動
# systemctl restart mysqld
※mysqldump等でMySQL5.1以前の古いMySQLからデータをバックアップする際、以下のエラーが出て接続出来ないとき
Warning: Using a password on the command line interface can be insecure.
mysqldump: Got error: 2049: Connection using old (pre-4.1.1) authentication
protocol refused (client option ‘secure_auth’ enabled) when trying to connect
mysqldumpコマンドのパスワードの後に「–skip-secure-auth」を追加
※外部からMySQLに接続する場合はルーターでTCP3306番をサーバーに通すように設定する