码迷,mamicode.com
首页 > 数据库 > 详细

2018-3-23 13周5次课 MySQL常用操作(下)

时间:2018-03-22 23:06:51      阅读:278      评论:0      收藏:0      [点我收藏+]

标签:MySQL

13.4 mysql用户管理


·创建用户:grant all on *.* to 'user1' identified by 'passwd';

或指定来源ip:grant all on *.* to 'user1'@'ip' identified by 'passwd';


mysql> grant all on *.* to 'user1' identified by '123456';
Query OK, 0 rows affected (0.00 sec)

mysql> grant all on *.* to 'user2'@'127.0.0.1' identified by '123456';
Query OK, 0 rows affected (0.00 sec)

技术分享图片


·针对mysql数据库所有的表有权限

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


·针对所有的ip来授权

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


·针对 socket 授权:

mysql> grant all on *.* to 'user1'@'localhost' identified by '123456';
Query OK, 0 rows affected (0.00 sec)

技术分享图片


·查看登录用户授权:show grants

技术分享图片


·查看指定用户授权:show grants for 用户名@ip;

技术分享图片


·针对部分权限授权:

grant SELECT,UPDATE,INSERT on db1.* to 'user3'@'192.168.133.1' identified by 'passwd';

技术分享图片


·如果想给同一个用户在不通的ip上授权:

把grants里的命令复制执行以便,更改ip

技术分享图片




13.5 常用sql语句


·查看某个数据库的某个表有多少行

select count(*) from mysql.user;

技术分享图片


·查看某个表的说有内容:

select * from mysql.db\G;

技术分享图片

技术分享图片

(select count(*) 和 select * 这种操作尽量避免,数据太大的表,比较耗费时间)


·显示字段:

select db from mysql.db;

技术分享图片

什么是字段:下图这些就是字段

技术分享图片


·显示多个字段:

select db,user from mysql.db;

技术分享图片


·模糊查询:

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

技术分享图片


·往表里插入数据:

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

技术分享图片



·更改表里的数据信息:

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

技术分享图片


·根据条件删除:

delete from db1.t1 where id=3;

技术分享图片


·清空表的所有数据(不用逐条删除):

truncate table db1.t1;

技术分享图片

(truncate 和 drop、delete的区别,truncate只清楚表里的数据,不破坏表的结构)


·彻底删除表:

drop table db1.t1;


mysql> drop table db1.t1;
Query OK, 0 rows affected (0.01 sec)


·彻底删除数据库:

drop database db1;


mysql> drop database db1;
Query OK, 1 row affected (0.01 sec)





13.6 mysql数据库备份恢复


·备份库:

mysqldump -u用户名 -p密码 数据库 > 备份数据文件路径

[root@localhost ~]# mysqldump -uroot -p123456 mysql > /tmp/mysql.sql

(数据太多不列出)


·恢复库:

mysql -u用户名 -p密码 数据库 < 备份数据文件路径

[root@localhost ~]# mysql -uroot -p123456 mysql2 < /tmp/mysql.sq

技术分享图片


·备份表:

mysqldump -u用户名 -p密码 数据库 表名 > 备份数据路径

[root@localhost ~]# mysqldump -uroot -p123456 mysql user > /tmp/user.sql


·恢复表:

mysqldump -u用户名 -p密码 数据库 < 备份数据路径

[root@localhost ~]# mysqldump -uroot -p123456 mysql < /tmp/user.sql

(恢复表数据,只要写库名即可)


·备份所有库:

mysqldump -u用户名 -p密码 -A > 备份数据路径

[root@localhost ~]# mysqldump -uroot -p123456 -A > /tmp/mysql_all.sql


·只备份表结构:

mysqldump -u用户名 -p密码 -d 数据库 > 备份数据路径

[root@localhost ~]# mysqldump -uroot -p123456 -d mysql2 > /tmp/mysql2.sql








2018-3-23 13周5次课 MySQL常用操作(下)

标签:MySQL

原文地址:http://blog.51cto.com/11530642/2090051

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!