Home >Database >Mysql Tutorial >Detailed explanation of Mysql operations such as adding users and authorization
Add users, create new databases, user authorization, delete users, and change passwords in MySQL (note that each line is followed by ; to indicate the end of a command statement):
1. Create a new user
登录MYSQL: @>mysql -u root -p @>密码
Create user:
mysql> insert into mysql.user(Host,User,Password) values("localhost","test",password("1234"));
Note: "localhost" here means that the user can only log in locally and cannot log in remotely on another machine. If you want to log in remotely, change "localhost" to "%", which means you can log in from any computer. You can also specify a machine that can log in remotely.
Then log in:
mysql>exit; @>mysql -u test -p @>输入密码 mysql>登录成功
2. Authorize the user
Authorization format: grant permission on database.* to username@login host identified by "password ";
Log in to MYSQL (with ROOT permissions), log in as ROOT here:
@>mysql -u root -p @>密码
First create a database (testDB) for the user:
mysql>create database testDB;
Authorize the test user to have all permissions on the testDB database (all permissions on a certain database):
mysql>grant all privileges on testDB.* to test@localhost identified by '1234'; mysql>flush privileges;//刷新系统权限表
Format: grant permissions on database.* to username@login host identified by "password";
If you want to specify some permissions to a user, you can write like this:
mysql>grant select,update on testDB.* to test@localhost identified by '1234'; mysql>flush privileges; //刷新系统权限表
Authorize the test user to have certain permissions on all databases:
mysql>grant select,delete,update,create,drop on . to test@"%" identified by "1234";
//The test user has select, delete, update, create, drop permissions on all databases.
//@"%" indicates authorization for all non-local hosts, excluding localhost. (The localhost address is set to 127.0.0.1. If it is set to a real local address, I don’t know if it is possible. There is no verification.)
//Authorize localhost: Add a grant all privileges on testDB.* to test @localhost identified by '1234'; That's it.
3. Delete users
@>mysql -u root -p @>密码 mysql>Delete FROM user Where User='test' and Host='localhost'; mysql>flush privileges; mysql>drop database testDB; //删除用户的数据库
Delete accounts and permissions:
>drop user 用户名@'%'; >drop user 用户名@ localhost;
4.Change the password of the specified user
@>mysql -u root -p @>密码 mysql>update mysql.user set password=password('新密码') where User="test" and Host="localhost"; mysql>flush privileges;
5.List all databases
mysql>show database;
6.Switch database
mysql>use '数据库名';
7.List all tables
mysql>show tables;
8.Display data table structure
mysql>describe 表名;
9.Delete database and data table
mysql>drop database 数据库名; mysql>drop table 数据表名;
The above is the detailed content of Detailed explanation of Mysql operations such as adding users and authorization. For more information, please follow other related articles on the PHP Chinese website!