6、Mysql创建用户以及授权
文件夹就是数据库
文件就是表
数据行就是行
data下的mysql这个数据库里有张User表,里面保存了用户信息
show databases;查看所有数据库
use mysql;
使用这个use数据库(进入这个文件夹)
show tables;
查看这个数据库下所有的表(文件)
文件最后有个user,我们登陆mysql服务器的时候,它就是在这里看有没有用户名和密码的
select user from user;查看user表下的user列
我能不能给它创建一个用户,以后登录的时候,不但可以用root,还可以用其他的用户
创建用户
create user "用户名"@"IP地址" identified by "密码";
比如说
create user "zhangsan"@"192.168.1.1" identified by "123";
表示创建了一个用户叫zhangsan,这个用户只能在192.168.1.1这台机器上才能登录,密码是123
create user "zhangsan"@"192.168.1.%" identified by "123";
连起来搞一遍
先创建用户
接着给zhangsan授权
show databases我们只能看到一个db1,information_schema是相关信息的,可以忽略它
在公司里数据库都是dba来搞的,dba给你创建个数据库,你这个程序只能用这个数据库,再给你创建个用户,你以后用这个用户进这个数据库就行了。咱们是看不到其他数据库的
就应该是这样,如果黑客黑了你的程序,它拿到了用户名和密码,他通过用户名和密码登录进来,也只能看这个数据库,跟你公司其他业务的数据库是不是没有关系,相当于我们把数据库和数据库通过用户进行分离,真正在公司开发的时候,dba给你提供一个用户名和密码,然后你拿着用户名和密码去登录就可以了。
取消授权
revoke all privileges from db1.t1 to "zhangsan"@"%";
这条命令就把张三这用户关于db1下的t1文件的所有权限都取消了
select * from 表名;
表示查看这个表下面所有的列
select name from 表名;
只查看这个表下name这一列
select name,age,id from 表名;
要看很多列,用逗号隔开,真实显示的时候跟你数据库里写的列的顺序是没有关系的,是按照你在select后面的写的先后顺序来显示