MySQL ユーザーのパーセント記号 % に localhost が含まれているかどうかを分析しますか?

藏色散人
リリース: 2021-10-18 16:54:39
転載
2116 人が閲覧しました

localhost を含まない MySQL ユーザーの割合は何ですか?

1 はじめに

MySQLを操作していると、時々 ## しか含まれないことがわかりました。 # が作成されました %のアカウントはlocalhost経由で接続できますが、接続できない場合があります。オンライン検索では満足のいく答えが見つかりません。手動で試してみます。

推奨される学習: 「

mysql ビデオ チュートリアル>>

2 2 つの接続方法

ここで説明されている 2 つの接続方法は、

mysql# を実行するときに参照します。 ## command,-hパラメータにはlocalhostまたはIPが入力されます。2 つの接続方法の違いは次のとおりです-h パラメータは localhost

## です。

#-h

パラメータが

localhostの場合、実際にはsocketが接続に使用されます (デフォルトの接続方法)。例は次のとおりです。

[mysql@mysql-test-83 ~]$ /usr/local/mysql57/bin/mysql -utest_user -p -hlocalhost Enter password: ========= 省略 =========== mysql> status /usr/local/mysql57/bin/mysql Ver 14.14 Distrib 5.7.21, for linux-glibc2.12 (x86_64) using EditLine wrapper Connection id: 9 Current database: Current user: test_user@localhost SSL: Not in use Current pager: stdout Using outfile: '' Using delimiter: ; Server version: 5.7.21-log MySQL Community Server (GPL) Protocol version: 10 Connection: Localhost via UNIX socket
ログイン後にコピー
現在のユーザー から、ユーザーは

xx@localhost、接続方法はLocalhost via UNIX ソケット#であることがわかります。##-h でパラメータは IP

-h

パラメータが

IP

の場合、実際にはTCPは例は次のとおりです

[mysql@mysql-test-83 ~]$ /usr/local/mysql57/bin/mysql -utest_user -p -h127.0.0.1 Enter password: ========= 省略 =========== mysql> status -------------- /usr/local/mysql57/bin/mysql Ver 14.14 Distrib 5.7.21, for linux-glibc2.12 (x86_64) using EditLine wrapper Connection id: 11 Current database: Current user: test_user@127.0.0.1 SSL: Cipher in use is DHE-RSA-AES256-SHA Current pager: stdout Using outfile: '' Using delimiter: ; Server version: 5.7.21-log MySQL Community Server (GPL) Protocol version: 10 Connection: 127.0.0.1 via TCP/IP Server characterset: utf8
ログイン後にコピー
From現在のユーザーユーザーが

xx@127.0.0.1

で、接続方法が # であることがわかります。 ##TCP/IP3 バージョン間の違いテスト方法は、接続できるかどうかを確認することです。テストプロセスを見たくない場合は、次の方法を使用できます。最後までスクロールして結論を確認してください

3.1 MySQL 8.0

ユーザーを作成します

mysql> select version(); +-----------+ | version() | +-----------+ | 8.0.11 | +-----------+ 1 row in set (0.00 sec) mysql> create user test_user@'%' identified by 'test_user'; Query OK, 0 rows affected (0.07 sec)
ログイン後にコピー
ローカルホストを使用してログイン

[root@mysql-test-72 ~]# /usr/local/mysql80/bin/mysql -utest_user -p -hlocalhost Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 9 Server version: 8.0.11 MySQL Community Server - GPL ========= 省略 =========== mysql> status -------------- /usr/local/mysql80/bin/mysql Ver 8.0.11 for linux-glibc2.12 on x86_64 (MySQL Community Server - GPL) Connection id: 9 Current database: Current user: test_user@localhost SSL: Not in use Current pager: stdout Using outfile: '' Using delimiter: ; Server version: 8.0.11 MySQL Community Server - GPL Protocol version: 10 Connection: Localhost via UNIX socket ...
ログイン後にコピー

IP を使用してログイン

[root@mysql-test-72 ~]# /usr/local/mysql80/bin/mysql -utest_user -p -h127.0.0.1 Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 8 Server version: 8.0.11 MySQL Community Server - GPL ========= 省略 =========== mysql> status -------------- /usr/local/mysql80/bin/mysql Ver 8.0.11 for linux-glibc2.12 on x86_64 (MySQL Community Server - GPL) Connection id: 8 Current database: Current user: test_user@127.0.0.1 SSL: Cipher in use is DHE-RSA-AES128-GCM-SHA256 Current pager: stdout Using outfile: '' Using delimiter: ; Server version: 8.0.11 MySQL Community Server - GPL Protocol version: 10 Connection: 127.0.0.1 via TCP/IP
ログイン後にコピー

結果には、

MySQL

8.0

バージョン、

localhost3.2 MySQL を含む%が表示されます。 5.7Create % user

db83-3306>>create user test_user@'%' identified by 'test_user'; Query OK, 0 rows affected (0.00 sec)
ログイン後にコピー
Use localhost to log in

[mysql@mysql-test-83 ~]$ /usr/local/mysql57/bin/mysql -utest_user -p -hlocalhost ========= 省略 =========== mysql> status /usr/local/mysql57/bin/mysql Ver 14.14 Distrib 5.7.21, for linux-glibc2.12 (x86_64) using EditLine wrapper Connection id: 9 Current database: Current user: test_user@localhost SSL: Not in use Current pager: stdout Using outfile: '' Using delimiter: ; Server version: 5.7.21-log MySQL Community Server (GPL) Protocol version: 10 Connection: Localhost via UNIX socket ....
ログイン後にコピー

Use IP to log in

[mysql@mysql-test-83 ~]$ /usr/local/mysql57/bin/mysql -utest_user -p -h127.0.0.1 Enter password: ========= 省略 =========== mysql> status -------------- /usr/local/mysql57/bin/mysql Ver 14.14 Distrib 5.7.21, for linux-glibc2.12 (x86_64) using EditLine wrapper Connection id: 11 Current database: Current user: test_user@127.0.0.1 SSL: Cipher in use is DHE-RSA-AES256-SHA Current pager: stdout Using outfile: '' Using delimiter: ; Server version: 5.7.21-log MySQL Community Server (GPL) Protocol version: 10 Connection: 127.0.0.1 via TCP/IP Server characterset: utf8 ...
ログイン後にコピー

Result Display

5.7

バージョン

MySQL

%localhost3.3 MySQL 5.6を含むユーザー

db83-3306>>select version(); +------------+ | version() | +------------+ | 5.6.10-log | +------------+ 1 row in set (0.00 sec) db83-3306>>create user test_user@'%' identified by 'test_user'; Query OK, 0 rows affected (0.00 sec)
ログイン後にコピー
Use localhostログインするには

[mysql@mysql-test-83 ~]$ /usr/local/mysql57/bin/mysql -utest_user -p -hlocalhost Enter password: ERROR 1045 (28000): Access denied for user 'test_user'@'localhost' (using password: YES)
ログイン後にコピー

IP を使用してログインしてください

[mysql@mysql-test-83 ~]$ /usr/local/mysql57/bin/mysql -utest_user -p -h127.0.0.1 Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 3 Server version: 5.6.10-log MySQL Community Server (GPL) ========= 省略 =========== mysql> status -------------- /usr/local/mysql57/bin/mysql Ver 14.14 Distrib 5.7.21, for linux-glibc2.12 (x86_64) using EditLine wrapper Connection id: 3 Current database: Current user: test_user@127.0.0.1 SSL: Not in use Current pager: stdout Using outfile: '' Using delimiter: ; Server version: 5.6.10-log MySQL Community Server (GPL) Protocol version: 10 Connection: 127.0.0.1 via TCP/IP ...... --------------
ログイン後にコピー

結果は、

MySQL 5.6

%

localhost## が含まれていないことを示しています。#3.4 MySQL 5.1ユーザーの作成

mysql> select version(); +-----------+ | version() | +-----------+ | 5.1.73 | +-----------+ 1 row in set (0.00 sec) mysql> create user test_user@'%' identified by 'test_user'; Query OK, 0 rows affected (0.00 sec)
ログイン後にコピー
ローカルホストを使用してログイン

[root@chengqm ~]# mysql -utest_user -p Enter password: ERROR 1045 (28000): Access denied for user 'test_user'@'localhost' (using password: YES)
ログイン後にコピー

IPを使用してログイン

[root@chengqm ~]# mysql -utest_user -p -h127.0.0.1 Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 4901339 Server version: 5.1.73 Source distribution ========= 省略 =========== mysql> status -------------- mysql Ver 14.14 Distrib 5.1.73, for redhat-linux-gnu (x86_64) using readline 5.1 Connection id: 4901339 Current database: Current user: test_user@127.0.0.1 SSL: Not in use Current pager: stdout Using outfile: '' Using delimiter: ; Server version: 5.1.73 Source distribution Protocol version: 10 Connection: 127.0.0.1 via TCP/IP
ログイン後にコピー

結果Display

5.1

%

のバージョンには

localhost

3.5 MariaDB 10.3Create user

db83-3306>>select version(); +---------------------+ | version() | +---------------------+ | 10.3.11-MariaDB-log | +---------------------+ 1 row in set (0.000 sec) db83-3306>>create user test_user@'%' identified by 'test_user'; Query OK, 0 rows affected (0.001 sec)
ログイン後にコピー
## が含まれていません#localhost を使用してログインします

[mysql@mysql-test-83 ~]$ /usr/local/mariadb/bin/mysql -utest_user -p -hlocalhost Enter password: ERROR 1045 (28000): Access denied for user 'test_user'@'localhost' (using password: YES)
ログイン後にコピー
IP を使用してログインします

[mysql@mysql-test-83 ~]$ /usr/local/mariadb/bin/mysql -utest_user -p -h127.0.0.1 Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 12 Server version: 10.3.11-MariaDB-log MariaDB Server ========= 省略 =========== MariaDB [(none)]> status -------------- /usr/local/mariadb/bin/mysql Ver 15.1 Distrib 10.3.11-MariaDB, for Linux (x86_64) using readline 5.1 Connection id: 12 Current database: Current user: test_user@127.0.0.1 SSL: Not in use Current pager: stdout Using outfile: '' Using delimiter: ; Server: MariaDB Server version: 10.3.11-MariaDB-log MariaDB Server Protocol version: 10 Connection: 127.0.0.1 via TCP/IP
ログイン後にコピー

結果は、

MariaDB 10.3

%

localhost

を除くと表示されます。

4 結論バージョン

ユーザーの

% に localhost が含まれるかどうか MySQL5.7 MySQL5.6 含まれていません
##MySQL8.0includes
includes
MySQL5.1 含まれない
MariaDB 10.3 含まれない

以上がMySQL ユーザーのパーセント記号 % に localhost が含まれているかどうかを分析しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:segmentfault.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!