Rumah > pangkalan data > tutorial mysql > Bagaimana untuk menambah pengguna ke pangkalan data mysql

Bagaimana untuk menambah pengguna ke pangkalan data mysql

青灯夜游
Lepaskan: 2022-06-14 17:18:45
asal
12434 orang telah melayarinya

Dua kaedah untuk menambah pengguna: 1. Gunakan pernyataan CREATE USER untuk mencipta pengguna baharu dan tetapkan kata laluan yang sepadan, dengan sintaks "CREATE USER user IDENTIFIED BY [ PASSWORD ] 'password']". 2. Gunakan penyataan GRANT untuk mencipta pengguna baharu, dengan sintaks "BERI kuasa pengguna PADA pangkalan data.jadual KEPADA pengguna [DIENTIFIED OLEH [KATAlaluan] 'kata laluan']".

Bagaimana untuk menambah pengguna ke pangkalan data mysql

Persekitaran pengendalian tutorial ini: sistem windows7, versi mysql8, komputer Dell G3.

Apabila MySQL dipasang, pengguna bernama root akan dibuat secara lalai Pengguna ini mempunyai keistimewaan super dan boleh mengawal keseluruhan pelayan MySQL.

Dalam pengurusan dan pengendalian harian MySQL, untuk mengelakkan seseorang daripada menggunakan pengguna root secara berniat jahat untuk mengawal pangkalan data, kami biasanya mencipta beberapa pengguna dengan kebenaran yang sesuai dan menggunakan pengguna root sedikit atau sedikit mungkin untuk log masuk ke sistem untuk memastikan akses selamat kepada data.

Dua cara untuk menambah (membuat) pengguna ke pangkalan data mysql

  • Gunakan pernyataan CREATE USER untuk mencipta pengguna

  • Gunakan pernyataan GRANT untuk mencipta pengguna

1 Gunakan pernyataan MySQL CREATE USER untuk mencipta pengguna baharu

Anda boleh menggunakan CREATE. Kenyataan USER untuk mencipta pengguna MySQL dan menetapkan kata laluan yang sepadan. Format sintaks asas adalah seperti berikut:

CREATE USER 用户 IDENTIFIED BY [ PASSWORD ] 'password'];
Salin selepas log masuk

1) Pengguna

menentukan untuk mencipta akaun pengguna, formatnya ialah nama pengguna'@'nama hos. Di sini nama_pengguna ialah nama pengguna, dan nama_hos ialah nama hos, iaitu nama hos yang digunakan oleh pengguna untuk menyambung ke MySQL. Jika hanya nama pengguna diberikan tanpa menyatakan nama hos semasa proses penciptaan, nama hos menjadi lalai kepada "%", yang mewakili sekumpulan hos, iaitu kebenaran terbuka kepada semua hos.

3) DIKENALPASTI OLEH klausa

digunakan untuk menentukan kata laluan pengguna. Pengguna baharu tidak perlu mempunyai kata laluan awal Jika pengguna tidak mempunyai kata laluan, klausa ini boleh ditinggalkan.

2) KATA LALUAN 'kata laluan'

KATA LALUAN bermaksud menggunakan nilai cincang untuk menetapkan kata laluan Parameter ini adalah pilihan. Jika kata laluan adalah rentetan biasa, tidak perlu menggunakan kata kunci KATA LALUAN. 'kata laluan' mewakili kata laluan yang digunakan oleh pengguna untuk log masuk dan perlu disertakan dalam petikan tunggal.

Nota: Kata laluan mestilah dalam teks yang jelas. MySQL akan menyulitkan kata laluan sebelum menyimpan akaun pengguna ke dalam jadual user.

Sebagai contoh, untuk mencipta pengguna baharu untuk menyambung ke pelayan pangkalan data MySQL dengan kata laluan dbadmin, gunakan pernyataan berikut: localhostsecretCREATE USER

CREATE USER dbadmin@localhost 
IDENTIFIED BY 'secret';
Salin selepas log masuk

Untuk melihat kebenaran akaun pengguna, gunakan penyataan SHOW GRANTS berikut:

SHOW GRANTS FOR dbadmin@localhost;
Salin selepas log masuk

Bagaimana untuk menambah pengguna ke pangkalan data mysql

*.* dalam hasilnya bermakna akaun pengguna dbadmin hanya boleh log masuk ke Pelayan pangkalan data, tiada kebenaran lain. Untuk memberikan kebenaran kepada pengguna, gunakan pernyataan GRANT.

Sila ambil perhatian bahawa bahagian sebelum titik (.) mewakili pangkalan data dan bahagian selepas titik (.) mewakili jadual, contohnya, database.table

Untuk membenarkan akaun pengguna mengakses data daripada mana-mana hos untuk menyambung, gunakan peratus (%) kad bebas, seperti dalam contoh berikut:

CREATE USER superadmin@'%'IDENTIFIED BY 'secret';
Salin selepas log masuk

Kad liar peratus % mempunyai kesan yang sama seperti dalam Operator LIKE, sebagai contoh, untuk membenarkan Untuk mysqladmin akaun pengguna menyambung ke pelayan pangkalan data daripada mana-mana subdomain hos begtut.com, gunakan peratus aksara kad bebas % seperti ini:

CREATE USER mysqladmin@'%.begtut.com'IDENTIFIED by 'secret';
Salin selepas log masuk

Perhatikan bahawa anda juga boleh menggunakan CREATE USER Gunakan kad bebas garis bawah _ dalam pernyataan Jika anda meninggalkan bahagian

akaun pengguna, MySQL akan menerimanya dan membenarkan pengguna menyambung daripada mana-mana hos. pernyataan berikut mencipta akaun pengguna bernama

yang boleh disambungkan daripada mana-mana hos Akaun pengguna baharu untuk menyambung ke pelayan pangkalan data: hostnameremote

Anda boleh melihat kebenaran yang diberikan kepada pengguna
CREATE USER remote;
Salin selepas log masuk
Salin selepas log masuk
. akaun seperti berikut:

remote

SHOW GRANTS FOR remote;
Salin selepas log masuk

Bagaimana untuk menambah pengguna ke pangkalan data mysqlJika anda secara tidak sengaja merujuk akaun pengguna

, MySQL akan mencipta pengguna

dan membenarkan pengguna menyambung dari mana-mana hos , yang mungkin bukan seperti yang anda harapkan 'username@hostname'.

例如,以下语句创建一个api@localhost可以从任何主机连接到MySQL数据库服务器的新用户。

CREATE USER 'api@localhost';
Salin selepas log masuk
SHOW GRANTS FOR 'api@localhost';
Salin selepas log masuk

Bagaimana untuk menambah pengguna ke pangkalan data mysql

如果您创建一个已存在的用户,MySQL将发出错误。例如,以下语句创建一个remote已存在的名为的用户帐户:

CREATE USER remote;
Salin selepas log masuk
Salin selepas log masuk

MySQL发出以下错误消息:

ERROR 1396 (HY000): Operation CREATE USER failed for 'remote'@'%'
Salin selepas log masuk

注意:CREATE USER 语句只是一个没有权限的新用户帐户。如果要向用户授予权限,请使用GRANT 语句。

2、使用MySQL GRANT 语句新建用户

虽然 CREATE USER 语句可以创建普通用户,但是这种方式不便授予用户权限。于是 MySQL 提供了 GRANT 语句。

使用 GRANT 语句创建用户的基本语法形式如下:

GRANT priv_type ON database.table TO user [IDENTIFIED BY [PASSWORD] 'password']
Salin selepas log masuk

其中:

  • priv_type 参数表示新用户的权限;

  • database.table 参数表示新用户的权限范围,即只能在指定的数据库和表上使用自己的权限;

  • user 参数指定新用户的账号,由用户名和主机名构成;

  • IDENTIFIED BY 关键字用来设置密码;

  • password 参数表示新用户的密码。

示例:

下面使用 GRANT 语句创建名为 test3 的用户,主机名为 localhost,密码为 test3。该用户对所有数据库的所有表都有 SELECT 权限。SQL 语句和执行过程如下:

mysql> GRANT SELECT ON*.* TO 'test3'@localhost IDENTIFIED BY 'test3';
Query OK, 0 rows affected, 1 warning (0.01 sec)
Salin selepas log masuk

其中,“*.*” 表示所有数据库下的所有表。结果显示创建用户成功,且 test3 用户对所有表都有查询(SELECT)权限。

技巧:GRANT 语句是 MySQL 中一个非常重要的语句,它可以用来创建用户、修改用户密码和设置用户权限。教程后面会详细介绍如何使用 GRANT 语句修改密码、更改权限。

【相关推荐:mysql视频教程

Atas ialah kandungan terperinci Bagaimana untuk menambah pengguna ke pangkalan data mysql. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan