CentOS 6.5/7.2インストールMysql 5.7

3608 ワード

阿里云の上で1台のECSをして、mysqlをインストールすることを试みて、yumは自动的にインストールした后に开いて、意外にも5.1バージョンで、ネット上で教えてもらってからやっと知って、5.6、5.7バージョンをインストールするには自分でカスタマイズしなければならなくて、记录の过程は以下の通りです.
###準備環境には、古いmysqlを削除し、ファイルをダウンロードすることが含まれます.
インストールされたバージョンの表示
rpm -qa|grep -i mysql

アンインストール
yum remove mysql*
クエリーコマンドをもう一度走ると、ファイルがないことがわかります.
インストールプロファイルをダウンロードこの記事によると、http://dev.mysql.com/downloads/repo/yum/ファイルをダウンロードするリンクを探します
wget https://dev.mysql.com/get/mysql57-community-release-el6-11.noarch.rpm
##ダウンロードしたファイルのインストールと構成
yum localinstall mysql57-community-release-el6-11.noarch.rpm -y
情報を確認
yum repolist all | grep mysql
デフォルトenableは5.7バージョンなので、直接インストールされています.
yum install mysql-community-server
        :

--> Finished Dependency Resolution
Error: Package: 2:postfix-2.10.1-7.el7.x86_64 (base)
           Requires: libmysqlclient.so.18(libmysqlclient_18)(64bit)
           Removing: 1:mariadb-libs-5.5.52-1.el7.x86_64 (@base)
               libmysqlclient.so.18(libmysqlclient_18)(64bit)
           Obsoleted By: mysql-community-libs-5.7.25-1.el6.x86_64 (mysql57-community)
               Not found
           Updated By: 1:mariadb-libs-5.5.60-1.el7_5.x86_64 (base)
               libmysqlclient.so.18(libmysqlclient_18)(64bit)
Error: Package: 2:postfix-2.10.1-7.el7.x86_64 (base)
           Requires: libmysqlclient.so.18()(64bit)
           Removing: 1:mariadb-libs-5.5.52-1.el7.x86_64 (@base)
               libmysqlclient.so.18()(64bit)
           Obsoleted By: mysql-community-libs-5.7.25-1.el6.x86_64 (mysql57-community)
              ~libmysqlclient.so.20()(64bit)
           Updated By: 1:mariadb-libs-5.5.60-1.el7_5.x86_64 (base)
               libmysqlclient.so.18()(64bit)
Error: Package: mysql-community-server-5.7.25-1.el6.x86_64 (mysql57-community)
           Requires: libsasl2.so.2()(64bit)
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

          mysql-libs,    :
 yum remove mysql-libs 
      
        :

Error: Package: mysql-community-server-5.7.25-1.el6.x86_64 (mysql57-community)
           Requires: libsasl2.so.2()(64bit)
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

   /etc/yum.repos.d/mysql-community.repo 
  

[mysql57-community]
name=MySQL 5.7 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/6/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

  /el/6/ /el/7/
  gpgcheck=0
    

起動
service mysqld start
中に入ってみて
mysql-u root結果だめ、エラーERROR 1045(28000):Access denied for user‘root’@‘localhost’(using password:NO)
そこでまたネットで一周して、解決方法はログイン検証を閉じた後、rootパスワードを設定すればいいです.
修正/etc/my.cnf、[mysqld]の下にskip-grant-tables=1 service mysqld restart mysql-u rootを入れて今回は
rootパスワードの変更
use mysql;
update user set authentication_string = password('root'), password_expired = 'N', password_last_changed = now() where user = 'root';
exit;

それからmy.cnfのプラスする文を取り除いて、mysqlサービスを再起動します
mysql-u root-pはパスワードでログインできます.
###リモート接続を開放する上での動作が完了した後、まだ本機しかログインできないので、以下のコマンドを実行します.
use mysql;
Grant all on *.*  to 'root'@'%' identified by 'root     ' with grant option;
            ,            ,             
set global validate_password_policy=0;
          
flush privileges;

完了するとリモート接続が可能になります.
###参考資料
  • mysql 5.7.11 rootデフォルトパスワード
  • を変更
  • パスワード検証ルール
  • を変更