命令を実行現在のデータベースをすべて表示できます<img src="https://img-blog.csdnimg.cn/20200630153948713.png" alt="" style="max-width:90%">主に注目する必要があるのは、<code style="overflow-wrap: Break" mono rgb>mysql
このライブラリは、次のコマンドを実行します。 、mysql データベースに user テーブルがあります。 <img src="https://img-blog.csdnimg.cn/2020063015404939.png" alt="" style="max-width:90%">ここで、ターミナルで <code style="overflow-wrap:break-word; 0px 2px ; -ファミリー: " operator mono rgba inline-block padding: border-radius: height: line-height:>clear
は画面をクリアできますが、mysql で clear を実行しても効果はありません。 show databases;
可以查看到目前所有的数据库我们主要需要关注的是mysql
这个库,切换数据库,执行命令use mysql
,在mysql的这个数据库里边有一个user表。在这里说一个小小的点,在终端我们以往执行clear
就可以清屏,但是在mysql中执行clear是没有作用的。
在mysql终端清屏指令是system clear
好了,回归正题,在user
表中,我们只需要俩个信息,一个是hos一个是user。我们需要执行查询语句给查询出来。
在上图中,host列指定的是允许用户登录的ip,如果为localhost那就只能本机登录,远程是登录不了的。
这也就是为什么我们本地navicat连接mysql无法连接的原因。
由于是本地的虚拟机不存在安全问题,所以咔咔将会把host设置为%
mysql ターミナルの画面クリア コマンドは システム クリア
🎜🎜 さて、本題に戻ります。user
テーブルには、hos と user の 2 つの情報のみが必要です。クエリを実行するにはクエリ ステートメントを実行する必要があります。 🎜🎜上の図では、ホスト列はユーザーがログインできる IP を指定します。localhost の場合は、ローカル ログインのみが可能です。 、リモートはログインできません。 🎜🎜これが、ローカルの navicat が mysql に接続できない理由です。 🎜🎜これはローカル仮想マシンであり、セキュリティ上の問題がないため、Kaka はホストを %
。 🎜% はワイルドカード文字を表します。これは、すべての接続が許可され、IP が制限されないことを意味します。
注: 実稼働環境では、トラブルを避けるためにホストを % に設定することはできません。これを行うと、実稼働環境の IP に応じて特定の設定を設定できます。次にそれを解決しましょう。
3. 問題を解決しますコマンドを実行しますuser set host='%' where user='root';
を更新し、localhost を % に変更して、すべての IP が接続できるようにします。 ここで権限を更新する必要がありますフラッシュ権限
ローカルの navicta がデータベースに再度接続します。現時点では以上です。 update user set host='%' where user='root';
,将localhost修改为%,允许让所有ip连接。到这里还需要进行一次权限刷新flush privileges
本地navicta再次连接数据库。这个时候就可以了。
四、扩展
关于flush privileges
IV. 拡張機能
🎜🎜について実行する必要がある場合に権限をフラッシュします。 🎜🎜このコマンドは、ユーザーおよび特権テーブル内のユーザー情報または権限を mysql ライブラリからメモリに抽出します。 🎜🎜ユーザーデータと権限が変更され、データベースを再起動せずに直接有効にしたい場合は、このコマンドを実行する必要があります。 🎜🎜つまり、このコマンドはユーザーデータとユーザー権限が変更される場合にのみ使用されます。 🎜<figure data-tool="mdnice编辑器" style="margin: 0; margin-top: 10px; margin-bottom: 10px;"><img src="https://img-blog.csdnimg.cn/2020063016045186.gif" alt="" style="max-width:90%"></figure>