mysql 5.6コマンドラインクライアントにログインし、Centos7でrootパスワードをリセットする方法は?
私は次を読んだこのリンクからしかし、うまくいきません。
1) sudo service mysqld stop
2) sudo service mysqld startsos
3) mysql -u root
4) Now you will be at mysql prompt. Here type:-
4.1) UPDATE mysql.user SET Password=PASSWORD('NewPassHere') WHERE User='root';
4.2) FLUSH PRIVILEGES;
4.3) quit;
5) sudo service mysqld restart
上記1)ステップの結果は次のとおりです。
[root@localhost ~]# sudo service mysqld stop
Redirecting to /bin/systemctl stop mysqld.service
Failed to issue method call: Unit mysqld.service not loaded.
上記3)段階の結果は次のとおりです。
-bash: syntax error near unexpected token `('
ステップ3をに変更すると、UPDATE mysql.user SET Password='NewPassHere' WHERE User='root';
次のエラーが発生します。
bash:更新:コマンドが見つかりません。
su -
私はbeと入力しroot
てmysql - u root
次のプロンプトでmysqlに入ることができるようです。ただし、上記のステップ5コマンドは、その単語を削除したりにsudo
置き換えても動作しません。service
systemctl
ルートパスワード設定からCentOS 7のmysql 5.6コマンドラインへのアクションアクセス権を取得するには?
答え1
RHEL/Centos 7 に最新の MySql 5.7 をインストールするには、いくつかの手順があります。
ステップ1-: 次のEPELリポジトリを追加してください。
$ sudo rpm -iUvh http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
ステップ2-: MySqlサーバーをインストールするには、以下のyumインストーラを使用してください。
$ sudo yum mysqlサーバーのインストール
ステップ3-: システム起動エントリに追加し、Mysql Serverを起動します。
$ sudo systemctl mysqldを有効にする $ sudo systemctl mysqldの起動
ステップ4-: MySqlサーバーのルートパスワードをリセットします。
sudo grep '一時パスワード' /var/log/mysqld.log
出力は-に似ています。
10.744785Z 1 [参考] root@localhost の一時パスワード生成: o!5y,oJGALQa
mysql_secure_installation リセット処理中に上記のパスワードを使用してください。
$sudo mysql_secure_installation MySQL サーバーの配置を保護します。 rootユーザーのパスワードを入力してください。 "validate_password"プラグインがサーバーにインストールされています。 以降のステップは、既存の構成を使用して実行されます。 プラグイン。 ルートの既存のパスワードを使用してください。 予想されるパスワード強度:100 ルートパスワードを変更しますか? ((「はい」の場合はy | Yを押し、「いいえ」の場合は別のキーを押してください):y 新しいパスワード: 新しいパスワードを再入力してください。 予想されるパスワード強度:100 提供されたパスワードを引き続き使用しますか? (「はい」の場合はy | Yを押し、「いいえ」の場合は別のキーを押します):y デフォルトでは、MySQLは匿名ユーザーとしてインストールされます。 所有権なしで誰でも MySQL にログインできるようにする それらのために作成されたユーザーアカウント。これは以下にのみ適用されます。 テストし、インストールプロセスをよりスムーズにします。 プロダクションに入る前に削除する必要があります。 環境。 匿名ユーザーを削除してもよろしいですか? (「はい」の場合はy | Yを押し、「いいえ」の場合は別のキーを押します):y 成功。 通常、ルートのみの接続が許可されます。 「ローカルホスト」。これにより、他の人が推測できなくなります。 ネットワークのルートパスワードです。 リモートルートログインを無効にしますか? (「はい」の場合はy | Yを押し、「いいえ」の場合は別のキーを押します):y 成功。 デフォルトでは、MySQLには「test」というデータベースが用意されています。 誰でもアクセスできます。これも単なるテスト用であり、 生産に入る前に削除する必要があります。 環境。 テストデータベースを削除してアクセスしますか? (「はい」の場合はy | Yを押し、「いいえ」の場合は別のキーを押します):y - テストデータベースの削除... 成功。 - テストデータベースに対する権限の削除... 成功。 権限テーブルを再ロードすると、すべての変更が保証されます。 これまでに行われた決定は直ちに適用されます。 今、権限テーブルを再ロードしますか? (「はい」の場合はy | Yを押し、「いいえ」の場合は別のキーを押します):y 成功。 すべて完了しました!
MySqlサーバーのルートパスワードを正常にリセットしました。
ステップ5-: mysqlサーバーが接続されていることを確認するには、次のコマンドを使用します。
$mysql -u root -p
出力 -:
MySQLモニタへようこそ。コマンドは ;または\ gで終わります。 MySQL接続IDは9です。 サーバーバージョン:5.7.12 MySQL Community Server(GPL) Copyright(c)2000、2016、Oracleおよび/またはその関連会社。すべての権利を保有。 Oracleは、Oracle Corporationおよび/またはその会社の登録商標です。 子会社。他の名前はその会社の商標です。 所有者。 ヘルプについては、「help」または「\ h」と入力してください。現在の入力ステートメントを消去するには、「\c」と入力します。 mysql>
私の記事を見てください:最新の-mysql-5-7-rhelcentos-7をインストールします。
答え2
時には設定が中断されることがあります。したがって、パッケージがまったくインストールされていないかのように再起動する方が簡単です。あなたの場合はMySQLを検討しています。
- 次のようにYumを使用してMySQLを削除します。
yum remove mysql mysql-server
- MySQLをアンインストールした後、設定を安全にバックアップできます。
mv /var/lib/mysql /var/lib/mysql_old_backup
これを削除するには、次を実行します。
rm -vR /var/lib/mysql
- これで、公式のMySQLリポジトリのパッケージに含まれているデフォルト設定を使用してMySQLを安全に再インストールできます(
wget
リポジトリを更新するrpmを取得する必要があります)。
yum install wget
- 次に、リポジトリをダウンロードしてインストールします。
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm && rpm -ivh mysql-community-release-el7-5.noarch.rpm
- リポジトリがインストールされていることを確認してください。
ls -1 /etc/yum.repos.d/mysql-community*
- 実際のインストールコマンドを実行します(このコマンドは
mysql-server
CentOSリポジトリのアップストリームMySQLの公式パッケージを置き換えます)。
yum install mysql-server
- 提供されたスクリプトを使用してルートパスワードを設定します。これで再度新しくインストールしました。
mysql_secure_installation
スクリプトを使用した後にパスワードを設定する必要がある場合は、以下を使用してください。
mysql -u root
- これで、次のように標準コマンドを使用してデーモンを起動および
systemctl
停止できます。systemd
systemctl start mysqld
引用する
答え3
コマンドを使用してMySQLを入力する場合:
mysql -u root
これにより、すでにMySQLにアクセスでき、「root」ユーザーのパスワードを設定していないか(おそらく)、MySQLの設定ファイル(たとえば/etc/my.cnf
。
MySQLのルートパスワードをリセットするには、次のことができる必要があります。
$ mysql_secure_installation
答え4
パスワードのために来たら利用してください
sudo grep 'temporary password' /var/log/mysqld.log
パスワードは - のように文字列の末尾に表示されます。
2021-09-20T08:57:32.734131Z 1 [Note] A temporary password is generated for root@localhost: tgo;40Yj;_xy3