Ringkasan dan perkongsian penciptaan pengguna dan pengurusan kebenaran dalam MySQL

WBOY
Lepaskan: 2022-09-02 20:55:16
ke hadapan
2049 orang telah melayarinya

Pembelajaran yang disyorkan: tutorial video mysql

1 Pengurusan pengguna

tersedia dalam mysql perpustakaan user表Anda boleh melihat pengguna yang dibuat

1 Cipta pengguna MySQL

Nota: Anda tidak boleh menentukan pengguna hanya dengan nama pengguna dalam MySQL. . Anda mesti Untuk menambah hos. Seperti hhy@10.1.1.1

Sintaks asas:

mysql> create user '用户名'@'被允许连接的主机名称或主机的IP地址' identified by '用户密码';
mysql> select user,host from mysql.user;
Salin selepas log masuk

Kes: Buat a Akaun MySQL, nama pengguna: hhy, kata laluan pengguna: 123

mysql> create user 'hhy'@'localhost' identified by '123';
/*或*/
mysql> create user 'hhy'@'127.0.0.1' identified by '123';
Salin selepas log masuk

Kes: Buat akaun MySQL (memerlukan membuka sambungan jauh), alamat IP hos: 192.1668.44.110, nama pengguna: ujian, kata laluan pengguna: 123

mysql> create user 'test'@'192.1668.44.110' identified by '123';
Salin selepas log masuk

Ujian: Pada hos dengan alamat IP 192.168.44.110

# yum install mysql -y
# mysql -h 192.168.44.110 -P 3306 -uharry -p
Enter password:123
Salin selepas log masuk

Penerangan pilihan: 192.168.44.110: Alamat IP pelayan MySQL

yum installation mysql: bermaksud klien MySQL telah dipasang
yum installation mysql-server: Menunjukkan bahawa pelayan MySQL telah dipasang

Kes: Buat akaun MySQL (memerlukan membuka sambungan jauh), segmen rangkaian IP hos: 10.1.1.0, nama pengguna :jack , kata laluan pengguna: 123

create user 'jack'@'192.168.44.%' identified by '123'
Salin selepas log masuk

Kes: Buat akaun MySQL (memerlukan membuka sambungan jauh), yang diperlukan untuk dibuka kepada semua hos, nama pengguna: root, pengguna kata laluan: 123

create user 'root'@'%' identified by '123';
Salin selepas log masuk

2. Padam pengguna MySQL

Pengguna asas:

mysql> nama hos alamat IP';

Nota khas:

Jika anda tidak menyatakan nama hos atau alamat IP hos semasa memadam pengguna, semua maklumat tentang akaun ini akan dipadamkan secara lalai.

Kes: Padam akaun hhy

drop user 'hhy'@'localhost';
Salin selepas log masuk

Kes: Padam akaun bicu

drop user 'jack'@'192.168.44.%';
Salin selepas log masuk

Kes : Buat dua akaun harry (localhost/10.1.1.23), dan kemudian padamkan salah satu daripadanya

mysql> create user 'harry'@'localhost' identified by '123';
mysql> create user 'harry'@'192.168.44.110' identified 

mysql> drop user 'harry'@'192.168.44.110';
Salin selepas log masuk

Cara lain untuk memadam akaun MySQL

mysql> delete from mysql.user where user='root' and host='%';
mysql> flush privileges;
Salin selepas log masuk

3 Pengguna MySQL

Nota khas: Menamakan semula pengguna MySQL biasanya boleh menukar dua bahagian, satu ialah nama pengguna, dan satu lagi ialah nama hos atau alamat IP hos yang dibenarkan untuk mengakses .

Sintaks asas:

mysql> rename user 旧用户信息 to 新用户信息;
Salin selepas log masuk

Kes: Tukar 'root'@'%' kepada 'root'@'10.1 .%'

mysql> rename user 'root'@'%' to 'root'@'10.1.1.%';
Salin selepas log masuk

Kes: Namakan semula 'harry'@'localhost' kepada 'hhy'@'localhost'

mysql> create user 'tom'@'localhost' identified by '123';
mysql> rename user 'tom'@'localhost' to 'hhy'@'localhost';
Salin selepas log masuk

Gunakan kenyataan kemas kini Kemas kini pengguna maklumat

mysql> update mysql.user set user='hhy',host='localhost' where user='tom' and host='localhost';

mysql> flush privileges;
Salin selepas log masuk

2. Pengurusan kebenaran

1 Perihalan kebenaran

Semua perihalan kebenaran

USAGE	无权限,只有登录数据库,只可以使用test或test_*数据库
ALL		所有权限
以下权限为指定权限
select/update/delete/super/replication slave/reload...
with grant option 选项表示允许把自己的权限授予其它用户或者从其他用户收回自己的权限
Salin selepas log masuk

Secara lalai , jika dengan pilihan pemberian tidak dinyatakan semasa memberikan kebenaran, ini bermakna pengguna ini tidak boleh memberikan kebenaran kepada pengguna lain, tetapi peruntukan kebenaran ini tidak boleh melebihi kebenarannya sendiri.

2. Lokasi storan kebenaran (faham)

  • mysql.user:Akaun dan kata laluan semua pengguna mysql, serta akses pengguna ke seluruh pangkalan data kebenaran Jadual (*.*)
  • mysql.db:Kebenaran untuk perpustakaan bukan mysql disimpan di sini (db.*)
  • mysql.table_priv: Kebenaran jadual tertentu dalam pangkalan data tertentu (db.table)
  • mysql.columns_priv :Kebenaran lajur tertentu dalam jadual tertentu dalam pangkalan data tertentu (db.table.col1)
  • mysql.procs_priv:Kebenaran prosedur tersimpan dalam perpustakaan tertentu

3 >

Buat jadual pangkalan data:

create database java;
use java;
create table tb_student(
	id mediumint not null auto_increment,
	name varchar(20),
	age tinyint unsigned default 0,
	gender enum('男','女'),
	address varchar(255),
	primary key(id)
) engine=innodb default charset=utf8;

insert into tb_student values (null,'刘备',33,'男','湖北省武汉市');
insert into tb_student values (null,'貂蝉',18,'女','湖南省长沙市');
insert into tb_student values (null,'关羽',32,'男','湖北省荆州市');
insert into tb_student values (null,'大乔',20,'女','河南省漯河市');
insert into tb_student values (null,'赵云',25,'男','河北省石家庄市');
insert into tb_student values (null,'小乔',18,'女','湖北省荆州市');
Salin selepas log masuk
Sintaks asas:

mysql> grant 权限1,权限2 on 库.表 to 用户@主机
mysql> grant 权限(列1,列2,...) on 库.表 to 用户@主机
Salin selepas log masuk
Kaedah perwakilan Jadual: *.* mewakili semua jadual data semua pangkalan data, db_itheima.* mewakili pangkalan data db_itheima Semua jadual data dalam db_itheima.tb_admin mewakili jadual tb_admin dalam pangkalan data db_itheima

Kes:

Kebenaran untuk pertanyaan pangkalan data java ke akaun anda

mysql> grant select on java.* to 'hehanyu'@'192.168.44.%';

mysql> flush privileges;
Salin selepas log masuk
Kes:

Berikan kebenaran kepada jadual data pelajar java.tb_student ke akaun hehanyu (menghendaki bahawa hanya medan umur boleh ditukar)

mysql> grant update(age) on java.tb_student to 'hehanyu'@'192.168.44.%';

mysql> flush privileges;
Salin selepas log masuk
Kes:

Tambahkan root@ % akaun, dan kemudian tetapkan semua kebenaran

4 Pertanyaan kebenaran pengguna
create user 'root'@'%' identified by '123';
grant all on *.* to 'root'@'%';
flush privileges;
Salin selepas log masuk

Tanya kebenaran pengguna semasa:

mysql> show grants;
Salin selepas log masuk
Tanya kebenaran pengguna lain:

5 dengan pilihan pilihan geran
mysql> show grants for '用户名称'@'授权的主机名称或IP地址';
Salin selepas log masuk

mysql> grant all on *.* to 'amy'@'10.1.1.%' identified by '123' with grant option;
mysql> grant all on *.* to 'harry'@'10.1.1.%' identified by '123';
Salin selepas log masuk
Seperti yang ditunjukkan dalam arahan di atas:

amy mempunyai fungsi pemberian kebenaran, dan harry tidak mempunyai fungsi untuk mengeluarkan kebenaran.

Jika kebenaran pemberian tidak mempunyai pilihan dengan pilihan geran, ia tidak boleh membenarkan pengguna lain.

6.batalkan untuk mendapatkan semula kebenaran

Sintaks asas:

revoke 权限 on 库.表 from 用户;
查看hehanyu用户权限
mysql> show grants for 'hehanyu'@'192.168.44.%';
撤消指定的权限
mysql> revoke update on java.tb_student from 'tom'@'192.168.44.%';
撤消所有的权限
mysql> revoke select on java.* from 'tom'@'192.168.44.%';
Salin selepas log masuk

推荐学习:mysql视频教程

Atas ialah kandungan terperinci Ringkasan dan perkongsian penciptaan pengguna dan pengurusan kebenaran dalam MySQL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:jb51.net
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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!