展開環境: インストールバージョン 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ファイルのインポートとエクスポートを実装します
主な機能は次のとおりです。製品情報を追加する製品情報を変更する単一の製品を削除する複数の製品を削除す...
目次1. ウィザードに従って仮想マシンを作成します2. オペレーティングシステムをインストールします...
目次概要オブジェクトにメソッドを定義するオブジェクトリテラルオブジェクトプロトタイプ動的コンテキスト...
目次PagodaをインストールするPythonランタイム環境を構成するPythonをインストールする...
順序なしリストでは、順序なしリストのシンボルは各リストの前に表示されるドットです。順序付きリスト o...
そこで、この問題を解決するために埋め込みフレームワークを導入します。具体的な原則は、フォームがデータ...
mysql ユーザーを作成し、承認します。形式: 「ユーザー パスワード」で識別されるユーザー@ログ...
まずは簡単なデータを見てみましょう。 Googleが発表したレポートによると、 ①中国の都市の97%...
取引トランザクションはビジネス ロジックの基本単位です。各トランザクションは一連の SQL ステート...
目次結合構文: 1. InnerJOIN: (内部結合) 2. LeftJOIN: (左結合) 3....
HTML で色を表す方法は 3 つありますが、最もよく使われるのは 6 桁の 16 進コード表現です...
序文Samba は、サーバー プログラムとクライアント プログラムで構成され、Linux システム上...
非常に大量のデータ(数百 GB)を計算する必要があったことはありますか?または、その内部を検索したり...
この記事では、Ubuntu 環境で xdebug をコンパイルしてインストールする方法について説明し...
目次1. 親コンポーネントと子コンポーネント間の一方向の値転送1. 親から子への値の受け渡し2. 子...