找回密码
 立即注册

推荐阅读

  • 便民服务
  • 关注我们
  • 社区新手
数据库用户权限操作
1、进入数据库:use mysql;
2、查询mysql服务器已经创建了哪些用户以及用户的访问权限:select host,user from user;
localhost和127.0.0.1都代表本地用户,可以通过xshell和centos对数据库进行操作
host代表的是一种文件类型
%代表具有远程访问权限的用户,可以通过数据库的客户端进行连接操作,比如Navicat,DBeaver
数据库访问失败的原因:
        1、用户没有远程访问的权限
        2、防火墙没有关
        关闭防火墙:service iptables stop
        查看防火墙状态:service iptables status
        3、数据库没有启动
        重启mysql守护进程:service mysqld restart
3、创建用户但未授权(本地访问权限):
insert into user(host,user,password) values('localhost','dcs20',password('123456'));
4、查看用户是否增加成功
select host,user,password from user;
flush privileges;刷新
5、查看是否有权限
show grants for 'dcs20'@'localhost';
6、给dcs20授予远程访问权限
grant select,update,delete on *.* to 'dcs20'@'%' identified by '123456';
*.*:表示数据库中的所有表的所有数据
7、创建用户并授予远程访问的权限
grant all privileges on *.* to 'dcs'@'%' identified by '123456';
8、修改dcs用户的密码
update user set password = password('234567') where user = 'dcs';
9、移除dcs用户的所有操作权限
revoke all on *.* from 'dcs'@'%';
10、删除dcs20的远程访问权限
delete from user where user = 'dcs20' and host = '%';

多表
create table aa(id int(1) PRIMARY key,name char(20));
create table cc(s_id int(1) PRIMARY key,score char(20));
insert into aa(id,name)values(1001,'zhangsan'),(1002,'lisi');
insert into cc(s_id,score)values(1001,'99');

1、基本连接(取的两张表中的交集部分),两张表的字段的数据相同才可以采用基本连接
SELECT * FROM aa,cc WHERE aa.id =cc.s_id;

2、内连接(取两张表中的交集部分),两张表的字段的数据相同才可以采用基本连接
SELECT * FROM aa INNER JOIN cc ON aa.id = cc.s_id;
关键字:inner join …… on ……

3、左连接(以左表为基准,左表的数据全部显示,右表的数据显示符合条件的数据,不符合条件的数据以null值显示)
SELECT * FROM aa LEFT JOIN cc ON aa.id = cc.s_id;
关键字:left join …… on ……

4、右连接(以右表为基准,右表的数据全部显示,左表的数据符合条件的显示,不符合条件的数据以null值显示)
SELECT * FROM aa RIGHT JOIN cc ON aa.id = cc.s_id;
关键字:right join …… on ……

5、硬连接(多个关系表的数目必须相同,以左表的字段显示)
SELECT * FROM aa UNION SELECT * FROM cc;
关键字:union


分享至 : QQ空间
收藏

0 个回复

您需要登录后才可以回帖 登录 | 立即注册