MySQL8.0でrootユーザーにすべての権限を付与する方法

134
Praveen 2018-05-05 04:23.

試した

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;

取得

エラー1064(42000):SQL構文にエラーがあります。1行目の「IDENTIFIEDBY」「root」「WITHGRANTOPTION」の近くで使用する正しい構文については、MySQLサーバーのバージョンに対応するマニュアルを確認してください。

注:以前のバージョンで試した場合も同じことが機能します。

また試した

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;

取得

エラー1410(42000):GRANTを使用してユーザーを作成することは許可されていません

MySQL(8.0.11.0)のユーザー名/パスワードはroot / rootです。

11 answers

227
Mike Lischke 2018-05-06 22:17.

MySQL 8以降、GRANTコマンドを使用してユーザーを(暗黙的に)作成することはできなくなりました。使用CREATE USERを、続い代わりにGRANTの声明:

mysql> CREATE USER 'root'@'%' IDENTIFIED BY 'root';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;

に関するセキュリティリスクに関する注意事項についてはWITH GRANT OPTION、以下を参照してください。

43
Nebulastic 2019-10-01 02:23.

私は多くの(間違った)答えを見ます、それはこれと同じくらい簡単です:

USE mysql;
CREATE USER 'user'@'localhost' IDENTIFIED BY 'pass';
GRANT ALL ON *.* TO 'user'@'localhost';
FLUSH PRIVILEGES;

注:自己作成の代わりに、データベースへの接続にuser使用できrootます。ただし、デフォルトのrootアカウントを使用してアプリケーションをデータベースに接続させることは、推奨される方法ではありません。

代替特権(注意して最小特権の原則を覚えておいてください):

-- Grant user permissions to all tables in my_database from localhost --
GRANT ALL ON my_database.* TO 'user'@'localhost';

-- Grant user permissions to my_table in my_database from localhost --
GRANT ALL ON my_database.my_table TO 'user'@'localhost';

-- Grant user permissions to all tables and databases from all hosts --
GRANT ALL ON *.* TO 'user'@'*';

どういうわけか次のエラーが発生する場合:

エラー1130(HY000):ホスト「1.2.3.4」はこのMySQLサーバーへの接続を許可されていません

次の2行を追加/変更して、/etc/mysql/my.cnfmysqlを再起動する必要があります。

bind-address           = 0.0.0.0
skip-networking
34
J. Doe 2018-07-17 08:52.

1)これは私のために働いた。まず、新しいユーザーを作成します。例:fooパスワードを持つユーザーbar

> mysql> CREATE USER 'foo'@'localhost' IDENTIFIED WITH mysql_native_password BY 'bar';

2)以下のコードを「foo」のユーザー名に置き換えます。

> mysql> GRANT ALL PRIVILEGES ON database_name.* TO'foo'@'localhost';

注:database_nameは、特権を付与するデータベースですすべてを意味します

3)ユーザーfooとしてログインします

mysql> mysql -u foo -p

パスワード:バー

4)Sequelizeからの最初の接続がpwバーでfooに設定されていることを確認します。

4
Nuel Makara 2019-05-17 23:45.

私の仕様:

mysql --version
mysql  Ver 8.0.16 for Linux on x86_64 (MySQL Community Server - GPL)

私のために働いたこと:

mysql> CREATE USER 'username'@'localhost' IDENTIFIED BY 'desired_password';
mysql> GRANT ALL PRIVILEGES ON db_name.* TO 'username'@'localhost' WITH GRANT OPTION;

両方のクエリでの応答:

Query OK, O rows affected (0.10 sec*)

注意:以前にデータベース(db_name)を作成し、どこかで読んだデフォルトのrootユーザーを使用する代わりに、DB内のすべてのテーブルに付与されたすべての特権を持つユーザー資格情報を作成していました。

4
Sergey Podushkin 2019-05-02 23:56.

指定されたユーザーはMySQLに存在しません(したがって、MySQLはバージョン8より前と同じようにGRANTで作成しようとしますが、このバージョンで導入された制限で失敗します)。

MySQLは現時点ではかなり馬鹿げているので、「root」@「localhost」があり、「root」@「%」に権限を付与しようとすると、次のようなホスト上のrootユーザーの一般的な概念ではなく、異なるユーザーとして扱われます。ローカルホスト。

エラーメッセージも誤解を招く恐れがあります。

したがって、エラーメッセージが表示された場合は、次のようなもので既存のユーザーを確認してください

SELECT CONCAT("'", user, "'@'", host, "'") FROM mysql.user;

次に、不足しているユーザーを作成するか(Mikeのアドバイスに従って)、GRANTコマンドを実際の既存のユーザー仕様に合わせて調整します。

3
Armando Juarez 2019-07-01 10:15.

この件については私の2セントです。MySQLWorkbenchから接続しようとしたときにまったく同じ問題が発生していました。私はbitnami-mysql仮想マシンを実行して、開発用のローカルサンドボックスをセットアップしています。

Bitnamiのチュートリアルでは、「Grant AllPrivileges」コマンドを実行すると述べています。

/opt/bitnami/mysql/bin/mysql -u root -p -e "grant all privileges on *.* to 'root'@'%' identified by 'PASSWORD' with grant option";

これは明らかに機能していませんでした。MikeLischkeの答えを使用してようやく機能するようになりました。

私が起こったと思うのは、root @%ユーザーが間違った資格情報を関連付けていたということです。したがって、ユーザーの特権を変更しようとして、運が悪かった場合は、次のことを試してください。

  1. ユーザーを削除します。
  2. ユーザーを再作成します。
  3. my.cnf構成ファイルに正しいバインディングがあることを確認してください。私の場合、サンドボックス環境用であるため、この行をコメントアウトしました。

Mysqlコンソールから:

ユーザーの一覧表示(すべてのユーザーを表示するのに役立ちます):

select user, host from mysql.user;

必要なユーザーを削除します。

drop user '{{ username }}'@'%';

ユーザーの作成と権限の付与:

CREATE USER '{{ username }}'@'%' IDENTIFIED BY '{{ password }}';
GRANT ALL PRIVILEGES ON *.* TO '{{ username }}'@'%' WITH GRANT OPTION;

次のコマンドを実行します。

FLUSH PRIVILEGES;

mysql構成ファイル 'my.cnf'を見つけて、次のような行を探します。

bind-address=127.0.0.1

'#'を使用してコメントします。

#bind-address=127.0.0.1

次に、mysqlサービスを再起動します。

これが同じ問題を抱えている人に役立つことを願っています!

2
zenglong chen 2019-07-01 05:17.

ユーザー名とドメインが以前に作成したものと同じであることを確認してください。ユーザーテーブルの2つの列によるMysqlselectアカウント。異なる場合、mysqlは、8.0バージョン以降はサポートされていない、許可によって新しいアカウントを作成したいと考える場合があります。

1
ZERO 2019-05-16 20:23.

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

mysql> FLUSH PRIVILEGES 
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES
1
尹劍平 2020-03-30 18:49.

私の仕様:

mysql --version
mysql  Ver 8.0.19 for Linux on x86_64 (MySQL Community Server - GPL)

私のために働いたこと:

mysql> USE mysql;
mysql> UPDATE User SET Host='%' WHERE User='root' AND Host='localhost';
0
Caos51 2019-01-31 02:33.

まあ、私はちょうど同じ問題を抱えていました。ルートに「%」があったとしても、リモートで接続できませんでした。さて、my.iniファイル(Windowsの設定ファイル)を見ると、bind-addressステートメントが見落とされていました。

だから... ...私はこれをパットbind-address = *した後[mysqld]、サービスを再起動します。今それは動作します!

0
devo chen 2020-03-06 07:02.

1.特権を付与する

mysql>すべての特権を付与します。TO'root '@'% 'GRANT OPTION;

mysql> FLUSH PRIVILEGES

2.ユーザーテーブルを確認します。

mysql> mysqlを使用する

mysql>ユーザーからホスト、ユーザーを選択

3.構成ファイルを変更します

mysql default bind ip:127.0.0.1、サービスにリモートアクセスする場合は、configを削除するだけです

#Modify the configuration file
vi /usr/local/etc/my.cnf

#Comment out the ip-address option
[mysqld]
# Only allow connections from localhost
#bind-address = 127.0.0.1

4.最後にサービスを再起動します

brewサービスはmysqlを再起動します

Related questions

MORE COOL STUFF

ケイト・ブランシェットは3日間一緒に夫と一緒に寝て、25年経ってもまだ夫と結婚しています

ケイト・ブランシェットは3日間一緒に夫と一緒に寝て、25年経ってもまだ夫と結婚しています

ケイト・ブランシェットは、夫に会ったとき、典型的な交際のアドバイスに逆らいました。

マイケルシーンが非営利の俳優である理由

マイケルシーンが非営利の俳優である理由

マイケルシーンは非営利の俳優ですが、それは正確にはどういう意味ですか?

ホールマークスターのコリンエッグレスフィールドがRomaDramaLiveでスリル満点のファンと出会う![エクスクルーシブ]

ホールマークスターのコリンエッグレスフィールドがRomaDramaLiveでスリル満点のファンと出会う![エクスクルーシブ]

特徴的なスターのコリン・エッグレスフィールドは、RomaDrama Liveでのスリル満点のファンとの出会いについて料理しました!加えて、大会での彼のINSPIREプログラム。

「たどりつけば」をオンラインでストリーミングできない理由

「たどりつけば」をオンラインでストリーミングできない理由

ノーザンエクスポージャーが90年代の最も人気のある番組の1つになった理由を確認するには、Blu-rayまたはDVDプレーヤーをほこりで払う必要があります。

バイオニック読書はあなたをより速く読むことができますか?

バイオニック読書はあなたをより速く読むことができますか?

BionicReadingアプリの人気が爆発的に高まっています。しかし、それは本当にあなたを速読術にすることができますか?

ドミニカのボイリング湖:アクセスは簡単ではありませんが、ハイキングする価値があります

ドミニカのボイリング湖:アクセスは簡単ではありませんが、ハイキングする価値があります

ドミニカのボイリング湖は、世界で2番目に大きいボイリング湖です。そこにたどり着くまでのトレッキングは大変で長いですが、努力する価値は十分にあります。

私たちの水をきれいに保つのを助けるためにあなたの髪を寄付してください

私たちの水をきれいに保つのを助けるためにあなたの髪を寄付してください

サロンからのヘアトリミングや個人的な寄付は、油流出を吸収して環境を保護するのに役立つマットとして再利用できます。

ホワイトハウスの最も記憶に残る結婚式を見てください

ホワイトハウスの最も記憶に残る結婚式を見てください

過去200年以上の間にホワイトハウスで結婚したのはほんの数人です。彼らは誰でしたか、そしてそこで結婚式を獲得するために何が必要ですか?

ねえNFL、ジョーバロウとカイラーマレーは女性の権利をサポートするために少しの助けを使うことができます

ねえNFL、ジョーバロウとカイラーマレーは女性の権利をサポートするために少しの助けを使うことができます

ジョー・バロウロー対ウェイド事件の転覆に対応するNFLは、言葉を言わないことで、腹立たしいが予測可能なPRの結果でした。

別の日、別のヒンジのないLIV記者会見

別の日、別のヒンジのないLIV記者会見

(lから)パット・ペレス、ブルックス・ケプカ、パトリック・リードサウジアラビアのLIVゴルフリーグのさらに別の信じられないほどの記者会見で、スポーツのファンはブルックス・ケプカからでたらめな吐き気と質問回避の驚異的なマスタークラスを受けました。パトリックリード、ブライソンデシャンボー、パットペレス、最近のPGAツアーの脱北者。

ミズ・マーベルの家族の帰郷は悪役よりも激しく打撃を与える

ミズ・マーベルの家族の帰郷は悪役よりも激しく打撃を与える

レッドダガーとマーベルさんがチームを組んでいます。

6億7500万ドルのビットコインローンのデフォルト後にすべての資産を清算するように命じられたスリーアローズキャピタル

6億7500万ドルのビットコインローンのデフォルト後にすべての資産を清算するように命じられたスリーアローズキャピタル

暗号業界最大の沈没船の1つであるスリーアローズキャピタルは、ついにその悲惨さから解放されています。火曜日に、不良債権ヘッジファンドは、債権者からの返済を要求する訴訟の高まりに応えて、バージンアイランド裁判所によって清算を命じられました彼らが3ACに行ったローン。

Zendaya Wishes Boyfriend Tom Holland Happy Birthday with Cuddly Photo: He 'Makes Me the Happiest'

Zendaya Wishes Boyfriend Tom Holland Happy Birthday with Cuddly Photo: He 'Makes Me the Happiest'

Zendaya shared a sweet photo in honor of boyfriend Tom Holland's 26th birthday Wednesday

小さな女性:脳卒中を患った後に病院から解放されたアトランタのジューシーな赤ちゃん:「まだ癒し」

小さな女性:脳卒中を患った後に病院から解放されたアトランタのジューシーな赤ちゃん:「まだ癒し」

シーレン「Ms.JuicyBaby」ピアソンは、先月脳卒中で入院した後、「もう一度たくさんのことをする方法を学ばなければならない」ため、言語療法を受けていることを明らかにしました。

エマストーンは彼女のクリフサイドマリブビーチハウスを420万ドルでリストアップしています—中を見てください!

エマストーンは彼女のクリフサイドマリブビーチハウスを420万ドルでリストアップしています—中を見てください!

オスカー受賞者の世紀半ばの家には、3つのベッドルーム、2つのバス、オーシャンフロントの景色があります。

ジーニー・メイ・ジェンキンスは、母乳育児の経験の中で、彼女は「本当に、本当に落ち込んでいる」と言います

ジーニー・メイ・ジェンキンスは、母乳育児の経験の中で、彼女は「本当に、本当に落ち込んでいる」と言います

ジーニー・メイ・ジェンキンスは、生後4か月の娘、モナコに母乳育児をしていると語った。

Suffragettes Indicam #3: Junho

Suffragettes Indicam #3: Junho

Mais um mês se findando — e metade do ano de 2022 já passou. Sabe o que isso significa? Não, não é hora de verificar se você está cumprindo com suas resoluções de Ano Novo.

Calin (Estudo de Caso UX/UI Design)

Calin (Estudo de Caso UX/UI Design)

Este projeto foi desenvolvido a partir de briefing fictício disponibilizado pelo site Tifólio, uma plataforma para designers. Briefing Matriz CSD Como ponto inicial utilizei como base algumas notícias atuais sobre meios de pagamento digital e com essas informações desenvolvi a Matriz CSD.

多元宇宙—Junø

多元宇宙—Junø

チェーン間アカウントがJunoに登場します。異なるブロックチェーン間でスマートコントラクトの構成可能性と真の相互運用性を提供します。

#brand【ベター・コール・ソール!アメリカのテレビシリーズ「ブレイキング・バッド」に最高のビジネス例が隠されている】・・・ルールクリエイティブ

#brand【ベター・コール・ソール!アメリカのテレビシリーズ「ブレイキング・バッド」に最高のビジネス例が隠されている】・・・ルールクリエイティブ

1.ドラマを見た後、起業する考えはありますか?あなたのビジネスはボトルネックに遭遇しましたか?方向性がなくてわからない場合は、ドラマを追いかけて行くことを心からお勧めします。(?)ブラフではなく、最も完璧なビジネス例を隠すドラマがあります。2.ブレイキング・バッドとその弁護士ドラマ「ブレイキング・バッド」を見た友人たちは、演劇の中で、穏やかな表情で、弁護士のソウル・グッドマンに深く感銘を受けなければなりません。口を開けて、感覚の弱い傭兵の性格を持っています。道徳の面で、サル・グッドマンは無意識のうちに劇に欠かせない役割を果たし、彼自身のシリーズ「絶望的な弁護士」(ベター・コール・ソール)を生み出しました。ウェントウのテキストとビデオは、劇中のソウル・グッドマンのテレビコマーシャルです。製品(サービス)、競争戦略、市場ポジショニング、ブランド名、ターゲット顧客グループ、コミュニケーション軸から広告まで、サル・グッドマンの役割のビジネス設定は、「最低」と見なすことができる超超超超超超完全です。ブランドコミュニケーションのコスト」「変化」のモデル。なぜ?私の分析をご覧ください。3.ソウル・グッドマンの「事業戦略」1.基本情報ブランド名:Saul Goodman製品:法律相談サービス対象顧客:麻薬中毒、飲酒運転、事故など。法律知識の欠如は、一般的に公立弁護士にしか余裕がなく、真面目な弁護士も「特別な法律を持つ消費者」を避けます。恐れてはいけない「​​ニーズ」。コミュニケーションの主軸:この国のすべての男性、女性、子供は有罪判決を受けるまで無実だと思います。地域:アルバカーキ市スローガン:Thrallに電話したほうがいいです!(ベター・コール・ソール)広告:2つの可能性のある犯罪状況をシミュレートします+サウルの主張+サウルのスローガン2をより適切に呼び出します。

Language