Linux下Mysql 5.7のインストールおよびリモート接続構成
詳細
以前Linuxでmysqlとそのよくある問題と構成をインストールするブログを書いたことがありますが、最近2日間、クラウドホストにmysqlをインストールする際に多くの問題に遭遇しました.自分が後で調べるのを便利にするためにも、後者が同じ穴に落ちないように多くの時間を浪費するためにも、実際のインストールと配置の過程で出会った問題を整理記録し、後で自分や他の人を助けることができることを望んでいます.
シナリオはこうです.以前の開発環境mysqlデータベースはイントラネット環境に組み込まれていましたが、データベースバージョンは5.5でした.その後、いくつかの故障が発生し、クラウドホストにデータベースを移行する必要がありました.yumでmysqlデータベースを簡単にインストールし始めました.その結果、データを導くときに「関数」(ストレージプロセス)がインポートされていないことに気づきました.現在のクラウドホストのデータベースインストールバージョンを表示すると5.1で、データベースの高バージョンが低バージョンにインポートされたことによる問題があるはずです.そこでこのyumがインストールしたmysqlの低バージョンを先にアンインストールするしかありません.
1.mysqlをアンインストールするには:
2.mysqlインストールパッケージ(バージョンmysql-5.7.11-1.el 6.x 86_64.rpm-bundle.tar)をアップロードし、解凍します.
3.解凍後、rpmインストールパッケージが10個程度発生する可能性がありますが、そのうちの4つのインストールパッケージだけでいいです.インストールパッケージ名は次のとおりです.
4.以下のコマンドを順次実行してインストールする
5.インストールが完了する前に、低バージョンのデータベースrootユーザーは認証なしで初期パスワードを変更することができますが、このバージョンのデータベースはセキュリティメカニズムを高めるためにパスワードでアクセスしなければならないので、まず初期パスワードを探しに行きます.その初期パスワードはランダムパスワードで、このパスワードはログで見つけることができます.具体的な手順は次のとおりです.
6.初期パスワードに従ってデータベースに入り、入ってからデータベースを操作する前にrootユーザーパスワードをリセットしなければならない.具体的な操作手順は以下の通りである.
7.このデータベースのインストールが完了しました.次に、リモート接続でアクセスできるユーザーを追加し、データベースを操作する場合は、次の手順に従います.
+----------- +-----------+-------------------------------------------------------------------------+
| user | host | authentication_string |
+----------- +-----------+-------------------------------------------------------------------------+
| root | localhost | *5D3B0C84FC999AD66714CB2D85D9E0F9D2BDCDBF |
| mysql.sys| localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| myt | % | *3B9EA1ADC939A8F4AB4DDF3AC2324B4B4A29C816 |
+------------+-----------+-------------------------------------------------------------------------+
8.これにより、Navicat For Mysql接続ツールでリモート接続とアクセスが可能になります.
以前Linuxでmysqlとそのよくある問題と構成をインストールするブログを書いたことがありますが、最近2日間、クラウドホストにmysqlをインストールする際に多くの問題に遭遇しました.自分が後で調べるのを便利にするためにも、後者が同じ穴に落ちないように多くの時間を浪費するためにも、実際のインストールと配置の過程で出会った問題を整理記録し、後で自分や他の人を助けることができることを望んでいます.
シナリオはこうです.以前の開発環境mysqlデータベースはイントラネット環境に組み込まれていましたが、データベースバージョンは5.5でした.その後、いくつかの故障が発生し、クラウドホストにデータベースを移行する必要がありました.yumでmysqlデータベースを簡単にインストールし始めました.その結果、データを導くときに「関数」(ストレージプロセス)がインポートされていないことに気づきました.現在のクラウドホストのデータベースインストールバージョンを表示すると5.1で、データベースの高バージョンが低バージョンにインポートされたことによる問題があるはずです.そこでこのyumがインストールしたmysqlの低バージョンを先にアンインストールするしかありません.
1.mysqlをアンインストールするには:
(1)service mysqld status
(2)service mysqld stop
(3)rpm -qa|grep -i mysql
(4)rpm -e --nodeps MySQL-server-5.1.22-0
(5)whereis mysql
(6)find / -name mysql
(7)rm -f /etc/my.cnf
(8)rm -rf /var/lib/mysql
2.mysqlインストールパッケージ(バージョンmysql-5.7.11-1.el 6.x 86_64.rpm-bundle.tar)をアップロードし、解凍します.
tar -zxvf mysql-5.7.11-1.el6.x86_64.rpm-bundle.tar
3.解凍後、rpmインストールパッケージが10個程度発生する可能性がありますが、そのうちの4つのインストールパッケージだけでいいです.インストールパッケージ名は次のとおりです.
mysql-community-common-5.7.11-1.el6.x86_64
mysql-community-libs-5.7.11-1.el6.x86_64
mysql-community-client-5.7.11-1.el6.x86_64
mysql-community-server-5.7.11-1.el6.x86_64
4.以下のコマンドを順次実行してインストールする
rpm -ivh mysql-community-common-5.7.11-1.el6.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.11-1.el6.x86_64.rpm
rpm -ivh mysql-community-client-5.7.11-1.el6.x86_64.rpm
rpm -ivh mysql-community-server-5.7.11-1.el6.x86_64.rpm
5.インストールが完了する前に、低バージョンのデータベースrootユーザーは認証なしで初期パスワードを変更することができますが、このバージョンのデータベースはセキュリティメカニズムを高めるためにパスワードでアクセスしなければならないので、まず初期パスワードを探しに行きます.その初期パスワードはランダムパスワードで、このパスワードはログで見つけることができます.具体的な手順は次のとおりです.
(1)vi /etc/my.cnf log-error=/var/log/mysqld.log
(2) A temporary password is
(3) root
6.初期パスワードに従ってデータベースに入り、入ってからデータベースを操作する前にrootユーザーパスワードをリセットしなければならない.具体的な操作手順は以下の通りである.
(1)mysql -uroot -paKOj9-QwCmix
(2)set password = password('aQjy9-QwCmix');
(3)alter user 'root'@'localhost' password expire never;
(4)flush privileges;
7.このデータベースのインストールが完了しました.次に、リモート接続でアクセスできるユーザーを追加し、データベースを操作する場合は、次の手順に従います.
(1)create user myt identified by 'password';
(2)grant select,insert,update,delete on *.* to myt@"%" identified by "password"; #
(3)select user, host, authentication_string from user;
+----------- +-----------+-------------------------------------------------------------------------+
| user | host | authentication_string |
+----------- +-----------+-------------------------------------------------------------------------+
| root | localhost | *5D3B0C84FC999AD66714CB2D85D9E0F9D2BDCDBF |
| mysql.sys| localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| myt | % | *3B9EA1ADC939A8F4AB4DDF3AC2324B4B4A29C816 |
+------------+-----------+-------------------------------------------------------------------------+
8.これにより、Navicat For Mysql接続ツールでリモート接続とアクセスが可能になります.