MySQL ログイン パスワードを忘れた場合、解決方法は実はとても簡単です。MySQL メイン構成ファイル my.cnf に「skip authorization table」パラメータ選択の行を追加するだけです。 my.cnf に次の行を追加します。 [root@test-huanqiu ~]# vim /etc/my.cnf //[mysqld]エリアに追加 その後、mysqlサービスを再起動すると、パスワードなしでログインできます。 [root@test-huanqiu ~]# /etc/init.d/mysqldを再起動します ログイン後にパスワードをリセットする [root@test-huanqu ~]#mysql mysql> update mysql.user set password=password("123456") where host="localhost" and user="root"; mysql> 権限をフラッシュします。 mysql> mysql.user からホスト、ユーザー、パスワードを選択します。 マイSQL> my.cnfに追加された行を再度コメントアウトし、mysqlを再起動します。 [root@test-huanqiu ~]# vim /etc/my.cnf [root@test-huanqiu ~]# /etc/init.d/mysqldを再起動します [root@test-huanqu ~]# mysql -p123456 ----------------------------------------------------------------------------------------------------------------------- 穴が見つかりました: 以前、mysql の完全バックアップを実行しました。復元した後、以前のパスワードを使用してログインできなくなっていることがわかりました。 最終的に、mysql.user テーブルの内容がクリアされたことが原因であることがわかりました。 解決する: データを入力してパスワードをリセットする mysql> ユーザーに挿入(ホスト、ユーザー、パスワード) 値("localhost","root","123456"); クエリは正常、1 行が影響を受け、3 つの警告 (0.01 秒) mysql> ユーザーからホスト、ユーザー、パスワードを選択します。 +-----------+------+----------+ | ホスト | ユーザー | パスワード | +-----------+------+----------+ | ローカルホスト | ルート | 123456 | +-----------+------+----------+ セット内の 1 行 (0.00 秒) mysql> update mysql.user set password=password("123456") where host="localhost" and user="root"; クエリは正常、1 行が影響を受けました (0.01 秒) 一致した行: 1 変更された行: 1 警告: 0 mysql> ユーザーからホスト、ユーザー、パスワードを選択します。 +-----------+------+------------------------------------------+ | ホスト | ユーザー | パスワード | +-----------+------+------------------------------------------+ | ローカルホスト | ルート | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | +-----------+------+------------------------------------------+ セット内の 1 行 (0.00 秒) mysql> ユーザーに挿入(ホスト、ユーザー、パスワード) 値("127.0.0.1","root","123456"); クエリは正常、1 行が影響を受け、3 つの警告 (0.00 秒) mysql> ユーザーからホスト、ユーザー、パスワードを選択します。 +-----------+------+------------------------------------------+ | ホスト | ユーザー | パスワード | +-----------+------+------------------------------------------+ | ローカルホスト | ルート | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | | 127.0.0.1 | ルート | 123456 | +-----------+------+------------------------------------------+ セット内の 2 行 (0.00 秒) mysql> mysql.user を更新し、password を password("123456") に設定し、user="root" に設定します。 クエリは正常、1 行が影響を受けました (0.00 秒) 一致した行: 2 変更された行: 1 警告: 0 mysql> ユーザーからホスト、ユーザー、パスワードを選択します。 +-----------+------+------------------------------------------+ | ホスト | ユーザー | パスワード | +-----------+------+------------------------------------------+ | ローカルホスト | ルート | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | | 127.0.0.1 | ルート | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | +-----------+------+------------------------------------------+ その後、リセットしたパスワードを使用して通常どおりログインできます。 ------------------------------------------------------------------------------------------------------------------ mysql ログインエラー 1: [root@test-huanqu ~]# mysql -p123456 [root@test-huanqiu ~]# ps -ef|grep mysql 現在の mysql.sock ファイル パスは /usr/local/mysql/var/mysql.sock であることがわかります。 解決策: ソフトリンクを作成する [root@test-huanqiu ~]# ll /usr/local/mysql/var/mysql.sock それはいいです。 [root@test-huanqu ~]# mysql -p123456 ---------------------------------------------------------------------------------------------------- mysql を起動すると、エラーが発生します: MySQL を起動しています... エラー! サーバーは PID ファイル (/data/mysql/data/mysql.pid) を更新せずに終了しました。 試みられた解決策: (1)許可の問題 mysql.pid ファイルに書き込み権限がない可能性があります。mysql インストール ディレクトリとデータ ディレクトリの権限を、mysql 起動ユーザーの権限に設定してください。たとえば、すべての権限がmysql:mysqlに変更されます。 (2)プロセス内にすでにmysqlプロセスが存在している可能性がある ps -ef|grep mysql mysqlプロセスがある場合はそれを終了し、mysqlを再起動してください。 (3)MySQLがマシンに複数回インストールされており、残留データがサービスの起動に影響を与えている可能性があります。 mysql データ ディレクトリに移動し、mysql-bin.index が存在するかどうかを確認し、すぐに削除してください。これが原因です。 (4) 起動時に設定ファイルが指定されていない場合、mysqlは/etc/my.cnf設定ファイルを使用します。このファイルを開き、[mysqld]セクションの下にデータディレクトリが指定されているかどうかを確認します。 [mysqld]の下に設定を追加します(例:datadir = /data/mysql/data) (5)スキップフェデレーションフィールド問題 my.cnf ファイルをチェックして、コメント アウトされていない skip-federated フィールドがあるかどうかを確認します。ある場合は、すぐにコメント アウトします。 (6)エラーログディレクトリが存在しない my.cnf ファイルにログ構成パスがあるかどうかを確認します。ある場合は、ログ ディレクトリが存在するかどうかを確認します。ログ ディレクトリの権限が mysql 起動ユーザーの権限であることを確認します。 (7) SELinuxが原因です。CentOSシステムの場合、SELinuxはデフォルトで有効になっています。 それを閉じて、/etc/selinux/config を開き、SELINUX=enforcing を SELINUX=disabled に変更し、保存して終了し、マシンを再起動して再試行してください。 mysqlインストールディレクトリに切り替える ./scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/data/mysql/data --user=mysql -------------------------------- MySQL サーバー側の認証情報を使用して MySQL にログインすると、次のエラーが表示されます。 エラー 2003 (HY000): '192.168.1.14' の MySQL サーバーに接続できません (111) 考えられる原因は次のとおりです: 1) ネットワーク接続に問題がある可能性があります。リモートから 192.168.1.14 に ping を実行すると、正常に ping が実行され、この問題は解消されます。 2) mysql サーバー 192.168.1.14 の iptables でポート 3306 のホワイトリスト制限が設定されています。 3) mysql サーバー 192.168.1.14 の my.cnf ファイルで bind_address アドレス バインディングが設定されており、ローカル接続は許可されていません。 4) MySQL サーバー 192.168.1.14 の my.cnf ファイルで skip_networking が設定されます。これは、MySQL はローカル ソケット経由でのみ接続でき (ソケット接続はローカル接続のデフォルト モードでもあります)、TCP/IP 監視が中止されることを意味します。 5) DNS 解決の問題をトラブルシューティングし、MySQL サーバー 192.168.1.14 の my.cnf ファイルに skip_name_resolve が設定されているかどうかを確認します。このパラメータを追加すると、ホスト名接続方法はサポートされなくなります。 6) --port の問題を確認します。MySQL サーバー 192.168.1.14 の MySQL ポートがデフォルトの 3306 ではなく、たとえばポート 3307 である可能性があります。この場合、リモート接続時に --port=3307 を追加します。 7) ユーザー名とパスワードの問題を確認します。実際、ユーザー名とパスワードが間違っていると、エラー コード 111 は表示されないため、ユーザー名とパスワードの問題は解消されるはずです。 MySQL パスワードを忘れた場合やログイン エラーが発生した場合の問題について、上記の簡単な説明は、編集者が皆さんと共有する内容のすべてです。参考になれば幸いです。また、123WORDPRESS.COM をサポートしていただければ幸いです。 以下もご興味があるかもしれません:
|
ビュー:一時テーブルを繰り返し使用する場合、将来の使用を容易にするために別名を付けることができます。...
目次序文文章1. 終了1.1 クロージャとは何ですか? 1.2 クロージャの特性1.3 クロージャを...
MySQL でメタデータ ロックがブロックされている場所を確認する方法手順: 1. セッション1の実...
インデックスを追加すると、クエリの効率が向上します。インデックスを追加するということは、ドキュメント...
1. MariaDB と MySQL の紹介1. MariaDB の紹介MariaDB は、MySQ...
HTML Police がコードを調べて意味のないタグをすべて見つけ出すので、注意を払う必要がありま...
目次序文コンストラクタ、プロトタイプオブジェクト、インスタンスオブジェクトの関係プロトタイプチェーン...
目次コンポーネント通信の概要コンテンツ3つの方法まとめコンポーネントコミュニケーション - 父から息...
1. まずパゴダを設置するインストール要件: Python バージョン: 2.6/2.7 (Pago...
HTML のフォームを使用して、ユーザーからさまざまな種類の入力情報を収集できます。フォームは、実際...
プロセス アドレス空間の分離は、現代のオペレーティング システムの注目すべき機能です。これは、「古い...
まとめDocker-compose は複数の Docker コンテナ サービスを簡単に組み合わせるこ...
この記事では、VMware Workstation 14 Proのインストールとアクティベーションに...
失敗のシナリオMySQL データベースに絵文字表現を挿入するために JDBC を呼び出すと、例外ja...
1. インデックスの重要性インデックスは、列に特定の値を持つ行をすばやく見つけるために使用されます。...