0603添加MySQL的用户[16页]
- 格式:pptx
- 大小:1.05 MB
- 文档页数:16
MySQL添加⽤户、删除⽤户与授权MySql中添加⽤户,新建数据库,⽤户授权,删除⽤户,修改密码(注意每⾏后边都跟个;表⽰⼀个命令语句结束):1.新建⽤户 1.1 登录MYSQL: @>mysql -u root -p @>密码 1.2 创建⽤户: mysql> insert into er(Host,User,Password) values("localhost","test",password("1234")); 这样就创建了⼀个名为:test 密码为:1234 的⽤户。
注意:此处的"localhost",是指该⽤户只能在本地登录,不能在另外⼀台机器上远程登录。
如果想远程登录的话,将"localhost"改为"%",表⽰在任何⼀台电脑上都可以登录。
也可以指定某台机器可以远程登录。
1.3 然后登录⼀下: mysql>exit; @>mysql -u test -p @>输⼊密码 mysql>登录成功2.为⽤户授权 授权格式:grant 权限 on 数据库.* to ⽤户名@登录主机 identified by "密码"; 2.1 登录MYSQL(有ROOT权限),这⾥以ROOT⾝份登录: @>mysql -u root -p @>密码 2.2 ⾸先为⽤户创建⼀个数据库(testDB): mysql>create database testDB; 2.3 授权test⽤户拥有testDB数据库的所有权限(某个数据库的所有权限): mysql>grant all privileges on testDB.* to test@localhost identified by '1234'; mysql>flush privileges;//刷新系统权限表 格式:grant 权限 on 数据库.* to ⽤户名@登录主机 identified by "密码"; 2.4 如果想指定部分权限给⼀⽤户,可以这样来写: mysql>grant select,update on testDB.* to test@localhost identified by '1234'; mysql>flush privileges; //刷新系统权限表 2.5 授权test⽤户拥有所有数据库的某些权限: mysql>grant select,delete,update,create,drop on *.* to test@"%" identified by "1234";//test⽤户对所有数据库都有select,delete,update,create,drop 权限。
MySQL如何创建新⽤户并授权?1.通过root账号登陆数据库mysql -uroot -p然后输⼊root账号密码2.创建新⽤户,并授权该⽤户可以操作的数据库和表grant all privileges on 数据库名.表名 to '⽤户名'@'主机名' identified by '密码' with grant option;flush privileges;数据库名:如果为*,表⽰所有数据库表名:如果为*,表⽰所有表*.*表⽰root权限,即满权限主机名:localhost表⽰仅允许本地连接,%表⽰本地和远程均可连接flush privileges;表⽰刷新权限,使授权⽣效所以允许远程连接的时候可以使⽤:grant all privileges on *.* to 'root'@'%' identified by 'root账号密码' with grant option;⽐如我们新建test⽤户,授予该⽤户的权限是仅能操作test_database数据库,密码‘123’grant all privileges on test_database.* to 'test'@'%' identified by '123' with grant option;3.如何修改⽤户密码root账号登陆mysql -u root -p使⽤mysql数据库use mysql;查看user表select host,user,authentication_string from user;结果如下:+-----------+------------------+-------------------------------------------+| host | user | authentication_string |+-----------+------------------+-------------------------------------------+| localhost | root | *6C2FC1038AB41E3B2B6D85B409E0F2B9C11BC8D3 || localhost | mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE || localhost | mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE || localhost | debian-sys-maint | *E73AA584982C771D0F8B40367F92049530E668D4 || % | root | *6C2FC1038AB41E3B2B6D85B409E0F2B9C11BC8D3 || % | test | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257 |+-----------+------------------+-------------------------------------------+修改⽤户密码:update user set authentication_string = password(‘新密码’) where user = '⽤户名'and host = '主机名';password()为mysql⾃⾝的⼀个加密函数以修改test⽤户密码为'456'为例update user set authentication_string = password('456') where user = 'test'and host = '%';4.如何撤销⽤户权限revoke all on 数据库名.表名 from'⽤户名'@'主机名';5.如何删除⽤户drop user '⽤户名'@’主机名‘;。
MySQL添加⽤户、创建数据库、分配权限⼀登录rootmysql -uroot -p⼆创建新⽤户mysql>create user'user'@'localhost' identified by'123456';Query OK, 0 rows affected (0.00 sec)mysql>create user'user'@'%' identified by'123456';Query OK, 0 rows affected (0.00 sec)mysql> flush privileges;Query OK, 0 rows affected (0.00 sec)三创建数据库mysql>create database testdb default charset utf8 collate utf8_general_ci;Query OK, 1 row affected (0.00 sec)四分配权限mysql>grant all privileges on `testdb`.*to'user'@'%';Query OK, 0 rows affected (0.00 sec)mysql>grant all privileges on `testdb`.*to'user'@'localhost';Query OK, 0 rows affected (0.00 sec)mysql> flush privileges;Query OK, 0 rows affected (0.00 sec) 注意: 此处以前我习惯性⽤ grant all privileges on `testdb`.*to'user'@'%' identified by '123456'; 但是数据库版本不同有时会不能成功执⾏,但是都⽀持 grant all privileges on `testdb`.*to'user'@'%';五退出并使⽤新账号登录mysql>exitByemysql -uuser -p //输⼊密码123456六特别说明第四步中的注意有的操作系统,⽐如ubuntu,MySQL默认是只允许本地登录,因此① 需要修改配置⽂件并重启mysql#bind-address =127.0.0.1 #注释掉这⼀⾏并重启② 需要对外/指定ip/ip段 开放3306端⼝。
MySQL添加新⽤户
按照正常思维,创建⽤户和设置密码什么的,应该是⼀个动作完成的。
然⽽事实并⾮如此。
我每次都是通过在⽹上找代码来创建MySQL的⽤户。
如果⽆效,就再搜⼀段。
现在我⼼累了,必须写个⾃⼰的教程。
1,先要连接到MySQL,⼯具就是在终端上输⼊mysql。
⼀般来说可以设置⼏个参数,重要的是-u代表⽤户,⽐如root,或者guest,-p代表密码,-h代表地址,如果是localhost,可以省略。
例⼦ mysql --user user --host localhost --port 3306 --password
回车之后输⼊密码即可。
偶尔会遇到直接使⽤sudo mysql可以登录的情况。
2,选择mysql数据库。
use mysql;
3,创建⽤户,⽐如⽤户名是demo,则使⽤
create user demo;
4,给⽤户权限。
grant all on *.* to 'demo'@'localhost' identified by 'password' ;
这⾥是把操作数据库的所有权限给了demo,并且设置密码是password
如果希望该⽤户可以创建新的⽤户,并授权,就使⽤添加with grant option
grant all on *.* to 'demo'@'localhost' identified by 'password' with grant option;
5,刷新下。
flush privileges;。
一, 创建用户:命令:CREATE USER 'username'@'host' IDENTIFIED BY 'password';说明:username - 你将创建的用户名, host - 指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost, 如果想让该用户可以从任意远程主机登陆,可以使用通配符%. password - 该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器.例子: CREATE USER 'dog'@'localhost' IDENTIFIED BY '123456';CREATE USER 'pig'@'192.168.1.101_' IDENDIFIED BY '123456';CREATE USER 'pig'@'%' IDENTIFIED BY '123456';CREATE USER 'pig'@'%' IDENTIFIED BY '';CREATE USER 'pig'@'%';二,授权:命令:GRANT privileges ON databasename.tablename TO 'username'@'host'说明: privileges - 用户的操作权限,如SELECT , INSERT , UPDATE 等(详细列表见该文最后面).如果要授予所的权限则使用ALL.;databasename - 数据库名,tablename-表名,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示, 如*.*.例子: GRANT SELECT, INSERT ON er TO 'pig'@'%';GRANT ALL ON *.* TO 'pig'@'%';注意:用以上命令授权的用户不能给其它用户授权,如果想让该用户可以授权,用以下命令:GRANT privileges ON databasename.tablename TO 'username'@'host'WITH GRANT OPTION;三.设置与更改用户密码命令:SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');如果是当前登陆用户用SET PASSWORD = PASSWORD("newpassword");例子: SET PASSWORD FOR 'pig'@'%' = PASSWORD("123456");四.撤销用户权限命令: REVOKE privilege ON databasename.tablename FROM 'username'@'host';说明: privilege, databasename, tablename - 同授权部分.例子: REVOKE SELECT ON *.* FROM 'pig'@'%';注意: 假如你在给用户'pig'@'%'授权的时候是这样的(或类似的):GRANT SELECTON er TO 'pig'@'%', 则在使用REVOKE SELECT ON *.* FROM 'pig'@'%';命令并不能撤销该用户对test数据库中user表的SELECT 操作.相反,如果授权使用的是GRANT SELECT ON *.* TO 'pig'@'%';则REVOKE SELECT ON er FROM'pig'@'%';命令也不能撤销该用户对test数据库中user表的Select 权限.具体信息可以用命令SHOW GRANTS FOR 'pig'@'%'; 查看.五.删除用户命令: DROP USER 'username'@'host';附表:在MySQL中的操作权限ALTER Allows use of ALTER TABLE.ALTER ROUTINE Alters or drops stored routines.CREATE Allows use of CREATE TABLE.CREATE ROUTINE Creates stored routines.Allows use of CREATE TEMPORARY TABLE.CREATETEMPORARYTABLECREATE USER Allows use of CREATE USER, DROP USER, RENAME USER, and REVOKE ALL PRIVILEGES. CREATE VIEW Allows use of CREATE VIEW.DELETE Allows use of DELETE.DROP Allows use of DROP TABLE.EXECUTE Allows the user to run stored routines.FILE Allows use of SELECT... INTO OUTFILE and LOAD DATA INFILE.INDEX Allows use of CREATE INDEX and DROP INDEX.INSERT Allows use of INSERT.LOCK TABLES Allows use of LOCK TABLES on tables for which the user alsohas SELECT privileges.PROCESS Allows use of SHOW FULL PROCESSLIST.RELOAD Allows use of FLUSH.REPLICATION Allows the user to ask where slave or masterCLIENT servers are.Needed for replication slaves.REPLICATIONSLAVESELECT Allows use of SELECT.SHOW DATABASES Allows use of SHOW DATABASES.SHOW VIEW Allows use of SHOW CREATE VIEW.SHUTDOWN Allows use of mysqladmin shutdown.SUPER Allows use of CHANGE MASTER, KILL, PURGE MASTER LOGS, and SET GLOBAL SQL statements. Allows mysqladmin debug command. Allows one extra connectionto be made if maximum connections are reached.UPDATE Allows use of UPDATE.USAGE Allows connection without any specific privileges.。
Mysql创建新用户方法1. CREATE USER语法:CREATE USER 'username'@'host' IDENTIFIED BY 'password';例子: CREATE USER 'dog'@'localhost' IDENTIFIED BY '123456';CREATE USER 'pig'@'192.168.1.101_' IDENDIFIED BY '12345 6';CREATE USER 'pig'@'%' IDENTIFIED BY '123456';CREATE USER 'pig'@'%' IDENTIFIED BY '';CREATE USER 'pig'@'%';实例1:mysql> create user jss;这样创建的用户,可以从任意安装了mysql客户端,并能够访问目标服务器的机器上创建连接,无须密码.例如,从ip:10.0.0.99的客户端执行连接:mysql -ujss -h 172.16.1.110查看该用户:mysql> select user,host,password from user where user='jss ';SELECT USER(); //显示当前用户实例2:mysql> create user jss_ps identified by 'jss';用户连接时,必须指定密码,那就可以在创建用户时,通过指定identified by子句来设定密码用密码登陆:mysql -ujss_ps -p -h 172.16.1.110如果希望指定的用户只能从某台指定的域(domain)或主机访问,可以在创建用户时指定host,例如,指定用户只能从10.0.0.99访问mysql>*********************.0.99identifiedbypassword '123456';2. 使用GRANT语句语法:mysql> grant 权限1,权限2,...权限n on 数据库名称.表名称 to 用户名@用户地址 identified by '连接口令';权限1,权限2,...权限n代表select,insert,update,delete,create,drop,index,alter,grant,refer ences,reload,shutdown,process,file等14个权限实例:mysql>grant select,insert,update,delete,create,drop on vtdc. ********************.225.87identifiedby'123';给来自10.163.225.87的用户joe分配可对数据库vtdc的employee表进行select,insert,update,delete,create,drop等操作的权限,并设定口令为123。
如何创建和管理MySQL用户创建和管理MySQL用户是在进行数据库管理时非常重要的一项任务。
MySQL 是一个流行的开源关系型数据库管理系统,它提供了丰富的功能和灵活性,使得用户可以轻松地管理数据和进行各种操作。
在本文中,我们将探讨如何创建和管理MySQL用户,重点关注用户权限、安全性和最佳实践。
一. 开始创建MySQL用户在创建MySQL用户之前,我们首先需要登录MySQL数据库服务器作为管理员。
可以使用以下命令登录:```mysql -u root -p```此命令将提示您输入管理员密码,成功后将进入MySQL命令行界面。
在此界面下,我们可以执行各种数据库操作。
二. 创建新用户在MySQL中,我们可以使用`CREATE USER`语句来创建新用户。
该语句的一般语法如下:```CREATE USER 'username'@'hostname' IDENTIFIED BY 'password';```其中,`username`是您要创建的用户名,`hostname`是该用户的主机名(或IP 地址),`password`是用户的密码。
例如,要创建一个名为“john”的用户,密码为“password”,可以使用以下命令:```CREATE USER 'john'@'localhost' IDENTIFIED BY 'password';```在MySQL中,用户名和主机名是一对唯一的标识符,因此可以为同一个用户名创建多个不同主机名的用户。
这种机制允许我们灵活地控制用户的访问权限。
三. 授权用户权限创建用户后,我们需要为其授权相应的权限。
在MySQL中,我们可以使用`GRANT`语句来实现。
该语句的一般语法如下:```GRANT privileges ON database.table TO 'username'@'hostname';```其中,`privileges`表示用户被授予的权限,`database.table`表示要授权的数据库和表的名称。
mysql添加⽤户并设置权限
1.登录本地⽤户
命令:[root@elk mysql]# mysql -uroot -p123456
登录外⽹⽤户(需要注意服务器可能只允许本地登录,需要修改响应的配置⽂件)
配置⽂件是/etc/mysql/f
命令:vim /etc/mysql/f
修改bind-address =127.0.0.1 将其注释掉;//作⽤是使得不再只允许本地访问
重启mysql:/etc/init.d/mysql restart
然后登录
2.创建⽤户
命令:mysql> CREATE USER 'username'@'host' IDENTIFIED BY 'password';
username:⽤户名;host:指定在哪个主机上可以登录,本机可⽤localhost,%通配所有远程主机;password:⽤户登录密码;
3.设置权限
命令:GRANT ALL PRIVILEGES ON *.* TO ‘username’@‘%’ IDENTIFIED BY 'password’;
刷新权限:FLUSH PRIVILEGES; #刷新之后才会⽣效,重启也可以
格式:grant 权限 on 库名.表名 to ⽤户@登录主机 identified by "⽤户密码";*.*代表所有权;
@ 后⾯是访问的是客户端IP地址(或是主机名) % 代表任意的客户端,如果填写 localhost 为本地访问(那此⽤户就不能远程访问该mysql 数据库了)。
如何在MySQL中创建用户和设置权限一、引言在MySQL数据库管理系统中,用户和权限管理是非常重要的任务之一。
通过创建用户和设置权限,可以分配给各个用户合适的数据库访问权限,保证数据的安全性和完整性。
本文将详细介绍如何在MySQL中创建用户和设置权限,并提供一些实用的技巧和注意事项。
二、创建用户在MySQL中,创建用户需要使用CREATE USER语句。
下面是一个简单的创建用户的示例:```CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';```其中,'username'为你要创建的用户名,'localhost'表示用户只能从本地访问数据库,'password'是用户的密码。
如果要允许用户从任意主机访问数据库,可以将'localhost'改为'%':```CREATE USER 'username'@'%' IDENTIFIED BY 'password';```另外,如果不想设置用户密码,可以使用如下语句:```CREATE USER 'username'@'localhost' IDENTIFIED BY '';三、授权权限创建用户之后,需要为其分配适当的权限,以便他们能够访问和操作数据库。
通过GRANT语句可以实现权限的授权。
下面是一个常见的授权语句示例:```GRANT SELECT, INSERT, UPDATE, DELETE ON database_name.* TO'username'@'localhost';```其中,database_name表示要授权的数据库名称,'username'@'localhost'表示要授权的用户,SELECT、INSERT、UPDATE、DELETE表示要授予的操作权限。