Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk memberikan kebenaran jauh kepada pengguna dalam mysql memberikan semua keistimewaan pada

Bagaimana untuk memberikan kebenaran jauh kepada pengguna dalam mysql memberikan semua keistimewaan pada

PHPz
PHPzke hadapan
2023-05-26 22:04:172402semak imbas

mysql memberikan semua keistimewaan pada memberikan pengguna keizinan jauh

mysql memberikan semua keistimewaan pada memberikan pengguna keizinan jauh

  • Tukar kaedah jadual.

Apabila akaun anda tidak membenarkan log masuk jauh dan hanya boleh menyambung ke localhost. Pada masa ini, selagi anda menukar item hos dalam jadual pengguna dalam pangkalan data mysql pada pelayan mysql, daripada localhost" kepada %, anda boleh merealisasikan log masuk jauh pengguna

Jalankan pada mesin di mana mysql berada dipasang:

1. mysql -u root -p

2 pilih hos, pengguna dari pengguna di mana pengguna='root';

3 '%' di mana pengguna= 'root' dan hos='localhost'; >

Kaedah kebenaran
  • Sebagai contoh, anda mahu pengguna menggunakan mypwd dari mana-mana Jika hos disambungkan ke pelayan mysql 🎜>

    Jalankan pada mesin tempat mysql dipasang:
  • [root@aaa-server ~]# mysql -u root -p
    MariaDB [(none)]> grant all privileges on *.* to root@'%' identified by '123' with grant option;
    Query OK, 0 rows affected (0.00 sec)
    MariaDB [(none)]> flush privileges;
    Query OK, 0 rows affected (0.01 sec)
    MariaDB [(none)]> flush privileges;
    Query OK, 0 rows affected (0.00 sec)
    MariaDB [(none)]> exit
    Bye
  • Jika anda ingin membenarkan pengguna pengguna menyambung ke hos dengan alamat IP 192.168.1.4 pelayan mysql, dan gunakan mypwd sebagai kata laluan

    Jalankan pada mesin tempat mysql dipasang:
  • 1. GRANT ALL PRIVILEGES ON *.* TO 'user'@'%' IDENTIFIED BY 'mypwd' WITH
          GRANT OPTION;  
    2.FLUSH   PRIVILEGES;
    模板:
    grant all privileges on 库名.表名 to '用户名'@'IP地址' identified by '密码' with grant option;
    flush privileges;
Perhatikan bahawa anda mesti FLUSH PRIVILEGES selepas kebenaran; jika tidak, ia tidak akan berkuat kuasa serta-merta

Pangkalan data versi tinggi tidak boleh mengubah suai kebenaran pengguna mengikut memberikan semua keistimewaan pada *.* kepada "root"@"%" yang dikenal pasti oleh "xxxx";

 GRANT ALL PRIVILEGES ON *.* TO 'user'@'192.168.1.3' IDENTIFIED BY 'mypwd' WITH GRANT OPTION;   
 FLUSH   PRIVILEGES;

Cara mengubah suai kebenaran pengguna dalam versi tinggi:
    mysql> SELECT @@VERSION;
    +-----------+
    | @@VERSION |
    +-----------+
    | 8.0.14    |
    +-----------+
    1 row in set (0.00 sec)
  • Semak sekali lagi dan dapatkan bahawa terdapat akar %

    # 先创建远程用户,再授权
    mysql> create user 'root'@'%' identified by  'password';
    Query OK, 0 rows affected (0.03 sec)
    mysql> grant all privileges on *.* to 'root'@'%' with grant option;
    Query OK, 0 rows affected (0.01 sec)
    mysql> flush privileges;
    Query OK, 0 rows affected (0.00 sec)

    perihalan pernyataan kebenaran mysql memberikan semua keistimewaan, mencipta pengguna, memadam pengguna

penyata kebenaran mysql:

mysql>  select User,Host from user;
+------------------+-----------+
| User             | Host      |
+------------------+-----------+
| root             | %         |
| mysql.infoschema | localhost |
| mysql.session    | localhost |
| mysql.sys        | localhost |
| root             | localhost |
+------------------+-----------+
5 rows in set (0.00 sec)
————————————————

semua keistimewaan ==》 Menunjukkan semua kebenaran, termasuk penambahan, pemadaman, pengubahsuaian dan semak kebenaran

*.* Semua jadual di bawah pangkalan data

root@% ==》 Semua jadual di bawah semua pangkalan data dan semua kebenaran diberikan kepada pengguna root % bermakna pengguna root boleh melakukan operasi pada mana-mana log masuk Sambungan mesin

  • Kata laluan yang digunakan untuk sambungan log masuk jauh ialah "123456".

  • Muat semula senarai keistimewaan: keistimewaan flush

  • grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
  • Buat pengguna: BUAT PENGGUNA 'jack'@'localhost' DIKENALPASTI OLEH 'test123';

    Lihat pengguna yang telah dibuat dalam pangkalan data: pilih pengguna,hos daripada pengguna;--jadual pengguna
  • Padam pengguna dalam pangkalan data bernama mysql yang disertakan dengan pangkalan data: padam daripada pengguna di mana pengguna = 'jack'; jadual pengguna, dan maklumat lain seperti jadual db masih akan wujud.

    Kosongkan cache: KEISTIMEWAAN FLUSH

Atas ialah kandungan terperinci Bagaimana untuk memberikan kebenaran jauh kepada pengguna dalam mysql memberikan semua keistimewaan pada. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam