展開環境: インストールバージョン Red Hat Cent 7.0 MYSQL バージョン 8.0.2.0 デプロイメントが成功した後、失敗が発生します。 1. MYSQL サービスを正常に起動した後、Linux で root アカウントとパスワードを入力できません。 2. /etc/my.cnf 設定ファイルに skip-grant-table を追加すると、通常どおりログインできますが、ユーザーを作成したり、その他の操作を実行したりすることはできません。 要約すれば: mysql を入力したいのですが、複数のコマンドを実行できず、複数のコマンドを実行した後に mysql を入力することもできず、無限ループに陥ります。 掘削段階: インターネットで多くの方法を見つけました。まず、skip-grant-table を追加します。次に、権限テーブルを更新し、サービスを再起動し、パスワードなしで root としてログインし、root パスワードを変更して、権限テーブルを再度更新します。いろいろな方法を試しましたが、どれもうまくいきませんでした。ルートリンクを変更するのは常に間違っています。 MySQL バージョン 8.0 以上のパスワード ポリシーと変更構文が間違っていることに気付きました。 操作を繰り返します: 【mysql】 #systemctl mysqld.service を停止します #systemctl mysqld.service を起動します #mysql –u ルート [Enterキーを押して入力してください] mysql> 権限をフラッシュします。 クエリは正常、影響を受けた行は 0 行 (0.00 秒) mysql> ユーザー 'root'@'localhost' を変更して 'MyNewPass' によって識別されます。 エラー 1819 (HY000): パスワードが現在のポリシー要件を満たしていません mysql> ユーザー 'root'@'localhost' を変更して 'MyNewPass@123' によって識別されます。 エラー 1396 (HY000): 'root'@'localhost' に対する ALTER USER 操作が失敗しました mysql> ユーザー 'root'@'%' を変更し、 'MyNewPass@123' によって識別されます。 [MySQL 8.0 以降のパスワード ポリシーの制限では、大文字と小文字に加えて、数字と特殊記号を使用する必要があります。以前は、root パスワードを変更した先人たちを参考にして、mysqladmin、set、update を使用しました。記事の最後に紹介があります。 クエリは正常、影響を受けた行は 0 行 (0.05 秒) 終了し、Skip-grant-tableステートメントを削除して、データベースを再起動します。 [root@localhost ~]# vim /etc/my.cnf [削除省略] [root@localhost ~]# systemctl stopmysqld.service [root@localhost ~]# systemctl startmysqld.service [root@localhost ~]# mysql -uroot –p mysql> ユーザー dbadmin@localhost を作成します -> 'pwd123' によって識別されます。 エラー 1819 (HY000): パスワードが現在のポリシー要件を満たしていません mysql> ユーザー dbadmin@localhost を作成します -> 'Pwd123' によって識別されます。 エラー 1819 (HY000): パスワードが現在のポリシー要件を満たしていません mysql> ユーザー dbadmin@localhost を作成します -> 'Pwd@123' によって識別されます。 エラー 1819 (HY000): パスワードが現在のポリシー要件を満たしていません mysql> ユーザー dbadmin@localhost を作成します -> 'MyNewPass@123' によって識別されます。 クエリは正常、影響を受けた行は 0 行 (0.10 秒) [ユーザーは通常どおり作成できますが、パスワードのセキュリティにはさらに高度な複雑さが必要です] 次に、リモート接続に SQL ツールを使用します。ここでは、リモート接続に SQLyog を使用します。 一般的に、パスワードが正しい場合でも、ROOT ユーザーのアカウントとパスワードを使用して直接接続することはできません。 MYSQL 8.0 で新しく 2.1 まず、ROOTユーザーのnative_passwordパスワードを変更することができます mysql> ALTER USER 'root'@'%' は、'MyPass@123' によって mysql_native_password で識別されます。 クエリは正常、影響を受けた行は 0 行 (0.15 秒) 2.2 次に、新しく追加されたユーザーにルートユーザーとしてログインし、認証してからリモートで接続します。 mysql> 'super'@'%' というユーザーを作成し、'MyPass@123' で識別します。 クエリは正常、影響を受けた行は 0 行 (0.10 秒) クエリは正常です。行数は 0 です。affe mysql> GRANT ALLON *.* TO 'super'@'%' WITH GRANT OPTION; クエリは正常、影響を受けた行は 0 行 (0.10 秒) mysql> 権限をフラッシュします。 クエリは正常、0 行が影響を受けました (0.00 秒) 終了しました (0.01 秒) mysql> ALTER USER 'super'@'%' IDENTIFIEDWITH mysql_native_password BY 'MyPass@123'; クエリは正常、影響を受けた行は 0 行 (0.10 秒) 注意: ps: MySQLのルートパスワードを変更するさまざまな方法を見てみましょう Navicat for MySQL で SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass'); を実行するだけです。 方法1: SET PASSWORDコマンドを使用する mysql -u ルート mysql> 'root'@'localhost' のパスワードを設定 = PASSWORD('newpass'); 方法 2: mysqladmin を使用する
ルートパスワードが設定されている場合は、次の方法を使用します
方法3: UPDATEを使用してユーザーテーブルを直接編集する mysql -u ルート mysql> mysql を使用します。 mysql> UPDATE user SET Password = PASSWORD('newpass') WHERE user = 'root'; mysql> 権限をフラッシュします。 ルートパスワードを紛失した場合は、 mysqld_safe --skip-grant-tables& mysql -u ルートmysql mysql> UPDATE user SET password=PASSWORD("新しいパスワード") WHERE user='root'; mysql> 権限をフラッシュします。 要約する 上記は、MySql8.0 以降のバージョンの ROOT パスワードを正しく変更するために紹介した方法です。お役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。 以下もご興味があるかもしれません:
|
>>: ReactはExcelファイルのインポートとエクスポートを実装します
目次説明する成し遂げるプロジェクトのディレクトリ構造は次のとおりです。効果図は以下のとおりです要約す...
zhangxinxu より https://www.zhangxinxu.com/wordpress...
この記事では、期間限定フラッシュセール機能を実装するためのJavaScriptの具体的なコードを参考...
まず、Moments を開いて、写真の数が異なるいくつかのレイアウトを確認するか、以下の例を参照して...
について最近、Vue を学習する過程で、基本的な知識の練習と強化を目的として、Qunar.com の...
エラー: Connection to blog0@localhost failed. [08001]...
環境の紹介オペレーティングシステム: Centos 7.4 Zabbix バージョン: zabbix...
1. 静的ページとは、Web ページ内に HTML タグのみが含まれるページです。WEB 開発者がこ...
一般的な提案は、WHERE 条件のインデックスを作成することですが、これは実際には一方的です。インデ...
フロントエンドの担当者であれば、面接でも仕事中でも、「CSS を使用して中央揃えにする」という効果に...
SQL を使用してデータを抽出する場合、テーブル内で重複した値に遭遇することがよくあります。たとえ...
SQL は、データを特定の順序で並べ替え、特定のフィールドでグループ化した後、隣接する 2 つのデ...
<a href="" onclick=""> を...
CSS には多くの属性があります。特に複数の値を設定する必要がある属性は、長期間使用しないと忘れられ...
MySQLをアンインストールする1. コントロールパネルで、MySQLのすべてのコンポーネントをア...