文档章节

mysql用户管理、常用sql语句、mysql数据库备份恢复

laoba
 laoba
发布于 06/21 10:01
字数 1071
阅读 15
收藏 0

1. mysql用户管理

mysql默认有一个root超级管理员账户,实际工作环境中不可能每个人都用此root权限,防止误操作、误删除,可以给单独的用户进行授权。

Mysql创建用户以及授权:

grant all on *.* to 'user1' identified by 'passwd';

其中,all表示所有权限(如读、写、查询、删除等操作); .有两个*,前者表示所有数据库,后者表示所有的表;identified by后面跟密码,用单引号括起来。这里的user1指localhost上的user1。如果是给网络其他机器上的某个用户授权,则需要执行如下命令:

grant all on db1.* to 'user2'@'172.20.4.171' identified by '123456';

其中,用户和主机的ip之间有个符号@,另外,命令中主机ip可以用%替代,表示所有主机,如下命令:

grant all on db1.* to 'user3'@'%' identified by '123456';

可以根据具体的权限授权:

grant SELECT,UPDATE,INSERT on db1.* to 'user4'@'127.0.0.1' identified by '123456';

主机ip 127.0.0.1表示只能在mysql服务器上使用该用户。

• show grants;

• show grants for user2@192.168.133.1;

show grants;命令平时用的不多,当给用户新增授权时可以直接复制里面的显示,然后更改来源ip,密码并不影响。

扩展:

撤销已经赋予给 MySQL 用户权限的权限。

revoke 跟 grant 的语法差不多,只需要把关键字 “to” 换成 “from” 即可:

revoke  all on *.* from 'root'@'192.168.0.197' ;

REVOKE语句只能取消用户的权限,而不可以删除用户。即使取消了所有的权限,用户仍然可以连接到服务器。要想彻底的删除用户,必须使用DELETE语句将该用户的记录从MySQL数据库中的user表中删除。该语句的语法格式如下: 

Delete from user where user = "user_name" and host = "host_name" ; 

例子:

use mysql;

delete from user where user='sss' and host='localhost' ;

flush privileges ;

最后再次查看一下授权用户,发现消失了

select user,host from mysql.user; //查看mysql用户和host

2. 常用sql语句

查询语句:

1. select count(*) from mysql.user;

其中,mysql.user表示MySQL库中的user表,count(*)表示表中共有多少行。

2. select * from mysql.db;

它表示查询mysql库的db表中的所有数据。当然也可以查询单个字段或者多个字段,如下所示

select db from mysql.db;

select db,user from mysql.db;

同样查询的语句中也可以使用万能匹配符%,如下所示:

select * from mysql.db where host like '192.168.%';

插入一行:

插入操作在mysql中也很普遍,如下所示:

insert into db1.t1 values (1, 'abc');

select * from db1.t1;

更改表的某一行:

mysql表里存放的数据支持更改某个字段,如下所示:

update db1.t1 set name='aaa' where id=1;

清空某个表的数据:

有时我们不希望删除表,而只是想清空某个表的数据,如下所示:

truncate table db1.t1;

清空表内容,表结构还在

删除表:

drop table db1.t1;

删除数据库:

• drop database db1;

3. mysql数据备份恢复

备份库:

备份mysql要使用mysqldump命令,具体用法如下:

mysqldump -uroot -p123456 mysql > /tmp/mysql.sql

其中,-u和-p两个选项的使用方法和前面介绍的一样;后面的mysql指的是库名,然后重定向到一个文本文档里。备份做完后,你可以查看/tmp/mysql.sql这个文件的内容。

恢复库:

mysql -uroot -p123456 mysql < /tmp/mysql.sql

可以恢复到新建的库中测试,看看表以及表里的内容是否一致

备份表:

mysqldump -uroot -p123456 mysql user > /tmp/user.sql

less /tmp/user.sql 查看备份的文件发现恢复时会先查看是否有这个表,如果有则删除重新创建表,然后在insert数据

恢复表:

mysql -uroot -p123456 mysql < /tmp/user.sql

备份所有库:

mysqldump -uroot -p123456 -A >/tmp/123.sql

-A选项备份所有的库

备份文件中搜索Current Database:可以看到有哪些库

只备份表结构:

mysqldump -uroot -p123456 -d mysql > /tmp/mysql.sql

© 著作权归作者所有

共有 人打赏支持
laoba
粉丝 3
博文 79
码字总数 86897
作品 0
闵行
MySql常用操作(mysql用户管理、常用sql语句、mysql数据库备份恢复)

mysql用户管理 创建用户并赋予权限 刷新之后才能生效 查看权限 运行效果如下所示 查看指定用户的权限 常用sql语句 MySQL数据库备份恢复 1.备份库文件 2.创建数据库mysql2并且将步骤1的备份文...

蛋黄_Yolks
08/23
0
0
MySQL用户管理、sql常用语句、mysql备份与恢复

MySQL用户管理 创建用户 .:表示所有库和表; user1:用户名; localhost:登录ip,默认localhost为本机登录ip,也可以使用%代表所有; 查看当前用户权限 常用的sql语句 select:查看; inse...

若白衣
03/24
0
0
13-2 13 mysql 用户管理 sql语句 mysql数据库备份恢复

13.4 mysql用户管理 13.5 常用sql语句 13.6 mysql数据库备份恢复 MySQL创建用户以及授权 开发,DBA需要深入掌握,但是作为系统管理员,基本的得会! select 查 insert 插入 update 修改 删除...

阿想
2017/10/31
0
0
mysql用户管理、sql语句、sql备份恢复

13.4 mysql用户管理 grant all on . to 'user1' identified by 'passwd'; grant SELECT,UPDATE,INSERT on db1.* to 'user2'@'192.168.133.1' identified by 'passwd'; grant all on db1.* to......

派派菠菜
06/21
0
0
MySQL用户管理、常用sql语句、备份和恢复数据

MySQL用户管理 创建一个普通用户user1并授权 grant all on . to 'user1'@'localhost' identified by '123456' all 表示所有的权限,也可以指定某一项权限,如SELECT 、UPDATE、INSERT等 “ . ...

黄昏残影
08/23
0
0

没有更多内容

加载失败,请刷新页面

加载更多

TypeScript基础入门之高级类型的多态的 this类型

转发 TypeScript基础入门之高级类型的多态的 this类型 高级类型 多态的this类型 多态的this类型表示的是某个包含类或接口的子类型。 这被称做F-bounded多态性。 它能很容易的表现连贯接口间的...

durban
12分钟前
0
0
tomcat中的几种log catalina localhost

体会 catalina.out catalina.log 是tomcat的标准输出(stdout)和标准出错(stderr) cataliana.{yyyy-MM-dd}.log和localhost.{yyyy-MM-dd}.log 是通过logging.properties配置的tomcat自己运行的......

onedotdot
33分钟前
1
0
Oracle return exit continue

常在循环体中看到下面3种语句: return exit continue 举例说明 啥都没有 -- none begin for i in 1 .. 10 loop if i < 5 then dbms_output.put_line('i < 5, i = ' || to_char......

taadis
今天
3
0
JSONObject 转换时出错 InvocationTargetException

JSONObject 转换时出错java.lang.reflect.InvocationTargetException 一时看不出来是什么问题。 挺奇怪的。 百度参考了一下这个 网页的解决方案 说是类型不对,空? 仔细查看代码,果然是有一...

之渊
今天
3
0
no such module 'pop'问题

在github上 clone 了一个 swift 项目,编译时提示"no such module 'POP'"错误,查了一下居然是因为podfile中指定的最低版本是iOS 11.0,大于我测试手机的iOS版本10.3.3,将Podfile中的最低版...

yoyoso
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部