web-dev-qa-db-ja.com

Macへのインストール後にALTER USER文を使用してMySQLのrootパスワードをリセットする

私はMac全体の経験が初めてです。最近MySQLをインストールしましたが、インストール後にパスワードを再設定する必要があるようです。それは私に他に何もさせません。

今、私はすでに通常の方法でパスワードをリセットしました:

update user set password = password('XXX') where user = root;

(ところで:MySQLは何らかの奇妙な理由でフィールドを 'password'から 'authentication_string'に改名したことを解決するために長年の歳月を費やしました。私はそのような変更にはかなり戸惑います。)

残念ながら、私にはわからない別の方法でパスワードを変更する必要があるようです。たぶんここの誰かがすでにその問題に遭遇したことがありますか?

159
dengar81
mysql> UPDATE mysql.user SET Password=PASSWORD('your_new_password')
       WHERE User='root'; 

エラー1820(HY000):この文を実行する前に、ALTER USER文を使用してパスワードを再設定する必要があります。

mysql> SET PASSWORD = PASSWORD('your_new_password');

クエリOK、影響を受けた0行、1警告(0.01秒)


これが私が答えを見つけたところです: https://dev.mysql.com/doc/refman/5.6/en/alter-user.html

444
Madmint

mysql -u root -pを使ってmysqlを起動した場合

ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';を試す

ソース: http://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html

106
shnraj

私はMacでも同じ問題があります

まず、サンドボックスモードでMySQLにログインします。

mysql -u <user> -p --connect-expired-password

その後、パスワードを設定してください

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('XXXX');

Query OK, 0 rows affected, 1 warning (0.01 sec)

それは私のために働きます〜

経由: https://dba.stackexchange.com/questions/118852/your-paswssword-has-expired-after-restart-mysql-when-updated-mysql-5-7-8-rcde

32
Ezio Shiki

MySQL 5.7.6以降を使用している場合

ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';

MySQL 5.7.5以前を使用している場合

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPass');

MySQLドキュメント

12
Johel Alvarez

MySQL 5.7.xでは、ネイティブパスワードに変更してパスワードを変更する必要があります。

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'test';
9
Vadim Smilansky

これらを実行してください。

$ cd /usr/local/mysql/bin
$ ./mysqladmin -u root password 'password'

それから走りなさい

./mysql -u root

ログインしてください。今すぐFLUSH権限を実行してください。

その後、MySQLコンソールを終了してログインしてみます。それでもうまくいかない場合は、次のコマンドを実行してください。

$ mysql -u root
mysql> USE mysql;
mysql> UPDATE user SET authentication_string=PASSWORD("XXXXXXX") WHERE User='root';
mysql> FLUSH PRIVILEGES;
mysql> quit

Xxxxxxを新しいパスワードに変更します。その後、もう一度ログインしてみてください。

更新。これを参照してください http://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html

それはあなたの問題を解決するはずです。

オラクルにいるならこれを試してください

ALTER USER username IDENTIFIED BY password
9
user4942382

たぶんそれを試して?

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('XXX');

または

SET PASSWORD FOR 'root'@'%' = PASSWORD('XXX');

どのアクセスを使用しているかによります。

(そして自分でフィールド名を変更すべきかどうかわからない…)

https://dev.mysql.com/doc/refman/5.0/en/set-password.html

7
Mateo Barahona

ALTER USER 'root' @ 'localhost' IDENTIFIED BY 'new_password';

この行を使う.

7
Manoj Behera

Ver 14.14 Distrib 5.7.19, for macos10.12 (x86_64)に、私はmysql -uroot -pとしてログインし、インストール時にMySQLによって生成されたパスワードを入力しました。それで….

ALTER USER 'root'@'localhost' IDENTIFIED BY '<new_password>';

例:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'Ab1234'; Query OK, 0 rows affected (0.00 sec) mysql> exit Bye $ mysql -uroot -p

そして、あなたは 'Ab1234'と入力することができます

4
Kenny Alvizuris

UPDATEユーザーSET authentication_string = PASSWORD( "MyPassWord")WHERE User = 'root';エラー1064(42000):SQL構文にエラーがあります。 MySQLサーバーのバージョンに対応するマニュアルで、1行目でnear '( "MyPassWord")WHERE User =' root ''を使用する正しい構文を確認してください

で解決

ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';

下のサイトからの問い合わせ

https://dev.mysql.com/doc/refman/8.0/en/resetting-permissions.html

4

Mysql 5.7.24最初にrootでログインする

ステップ1:ログからパスワードを取得する

 grep root@localhost /var/log/mysqld.log
    Output
        2019-01-17T09:58:34.459520Z 1 [Note] A temporary password is generated for root@localhost: wHkJHUxeR4)w

ステップ2:mysqlに彼と一緒にログイン

mysql -uroot -p'wHkJHUxeR4)w'

ステップ3:あなたは新しいrootパスワードを入れます

SET PASSWORD = PASSWORD('xxxxx');

ERROR 1819 (HY000): Your password does not satisfy the current policy requirementsが手に入ります

どのように修正しますか?

これを実行 SET GLOBAL validate_password_policy=LOW;

再試行 SET PASSWORD = PASSWORD('xxxxx');

2
Robert A

これは私のために働いた:

'auth_string'で識別されるALTER USER USER()。

私はそれをここで見つけました: http://dev.mysql.com/doc/refman/5.7/en/alter-user.html#alter-user-current

2

SET PASSWORD = PASSWORD('your_new_password');を使うとクラッシュするかもしれません

(エラー1819(HY000):あなたのパスワードは現在のポリシーの要件を満たしていません)

SET GLOBAL validate_password_policy=LOW;を使ってそれを傾けることができます。

これは私のために働く方法です。

mysql> show databases ;

エラー1820(HY000):この文を実行する前に、ALTER USER文を使用してパスワードを再設定する必要があります。

mysql> uninstall plugin validate_password;

エラー1820(HY000):この文を実行する前に、ALTER USER文を使用してパスワードを再設定する必要があります。

mysql> alter user 'root'@'localhost' identified by 'root';

クエリOK、影響を受けた0行(0.01秒)

mysql> flush privileges;

クエリOK、影響を受けた0行(0.03秒)

1
sunling90

5.7バージョンでは。 「パスワード」フィールドは削除されました。 'authentication_string'で置き換えてください

use mysql;
update user set authentication_string=password('123456') where user='root';
flush privileges;
1
HUAN LIU

私はMac OS X 10.10.4(Yosemite)でも同じ問題を抱えていました。SETPASSWORDは私のために働きます。クエリOK、影響を受けた0行、1警告(0.01秒)

mysql環境パス変数を.bash_profileに設定して、以下の行を追加します。
export PATH = $ PATH:/ usr/local/mysql/bin、その後、次のコマンドを実行します。source .bash_profile

0
Moumita

mysql> SET PASSWORD = PASSWORD('your_new_password');それは私のために働きます。

0
zhao

私はmysqlワークベンチとmysqlコミュニティサーバーをインストールした後に問題を抱えていました。サーバーのインストール中に生成されたパスワードを取得しました。ワークベンチの既存のローカルインスタンスをダブルクリックすると、新しいパスワードを設定できるダイアログが表示されます。

0
Malte

バージョン5.7.23以降を覚えていてください - userテーブルはカラムパスワードを持っていません代わりに認証文字列なので以下はユーザのためにパスワードをリセットしている間働きます。

update user set authentication_string=password('root') where user='root';
0
Pravin