mysql8.0インストール後の問題記録

1724 ワード

MySQL 8.0のアップグレード変更の詳細


システム変数のデフォルト値はmysql_native_passwordからcaching_sha2_passwordに変わります.この変更は、MySQL 8.0.4以降にインストールまたはアップグレードした後に作成された新しいアカウントにのみ適用されます.
切り替えたい既存のユーザーcaching_sha2_passwordは、次のALTER USER文を使用して実行できます.
ALTER USER user
  IDENTIFIED WITH caching_sha2_password
  BY 'password';
  • インストール後に発生した最初の問題:この暗号化方式は、NavicatなどのMySQLに接続された多くのインタフェースツールまたはプログラミング言語mysqliインタフェースを失効させる:
  • エラーコード
    Error : The server requested authentication method unknown to the client [caching_sha2_password]
    

    理由はMySQL 8が認識するからである.0バージョンの暗号化
    プロシージャの変更
    //1、  mysql
    mysql -u root -p
    //2、      
    ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
    //3、    
    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
    //4、  
    FLUSH PRIVILEGES;
    

    上記の注意点は、「password」これは自分で修正することです.
  • 上記の変更の過程で、私たちは知らず知らずのうちにパスワードを他のものに変更し、元のパスワードでログインするかもしれません.このエラーメッセージ
  • が表示されます.
    Access denied for user ‘root’@’localhost’ (using password: YES)
    

    ヒントは明らかですが、あなたが入力したパスワードにエラーが発生しました.もし私たちがパスワードがどのように変更されたか分からない場合は.この修正も簡単です.0以前の変更
    /etc/init.d/mysql stop 
    
    mysqld_safe –skip-grant-tables & 
    
    mysql -uroot -p 
    
    mysql>update mysql.user set password=password('mypassword') where user=’root’; 
    
    mysql>flush privileges; 
    
    mysql>quit
    

    Mysql8.0以降の変更
    > use mysql  
    > ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '    ';  
    > FLUSH PRIVILEGES;