文档章节

MySQL用户管理,常用语句,备份

阿想
 阿想
发布于 2017/08/22 11:21
字数 889
阅读 9
收藏 0
点赞 0
评论 0

13.4 MySQL用户管理

创建、授权

mysql -uroot -p
grant all on *.* to 'user1'@'127.0.0.1' identified by '1234a';   //第一个*为库,第二个*为表
quit
mysql -uuser1 -p1234a -h127.0.0.1
[ctrl-d]
mysql -uroot p
grant all on *.* to 'user1' identified by '1234a';
exit
mysql -uuser1 -p1234a -h试试看
还可以:
grant SELECT,UPDATE,INSERT on db1.* to 'user2'@'192.168.83.1' identified by 'passwd';
grant all on db1.* to 'user3'@'%' identified by 'passwd'; 

show grants; 查看当前用户权限
show grants for user1@127.0.0.1;
show grants for user2@192.168.83.1; 两行可以用于迁移用户IP,两行改IP执行下,原密码会保留

清理

假设你想管理下用户,只记得某个库里的某个表管理用户的登录,你需要这么做:

  • 前提是有足够权限的账户,没有就skip刷root密码吧
[root@ax-01 ~]# mysql -uroot -p
Enter password:

mysql> show databases;   //查所有库的名字
+--------------------+
| Database           |
+--------------------+
| information_schema |
| cmsdb              |
| discuz             |
| mysql              |    //你看到mysql库,想起来就这个库里,但是不知道该查那一个表
| performance_schema |
| test               |
| wpdb               |
+--------------------+

mysql> use mysql;    //选择mysql库
mysql> show tables;    //查mysql里面的所有表
| time_zone_name            |
| time_zone_transition      |
| time_zone_transition_type |
| user                      |    //你看到user表,想起来应该在这里,但是不知道查那个字段
+---------------------------+

mysql> desc user;    //查看所有user下的字段名(表头)
+------------------------+-----------------------------------+------+-----+-----------------------+-------+
| Field                  | Type                              | Null | Key | Default               | Extra |
+------------------------+-----------------------------------+------+-----+-----------------------+-------+
| Host                   | char(60)                          | NO   | PRI |                       |       |
| User                   | char(16)                          | NO   | PRI |                       |       |
| Password               | char(41)                          | NO   |     |                       |       |
看到这里你感觉需要了解user,host,password这三个字段,因为登陆的时候要用到

mysql> select user,host,password from mysql.user;    //查看这三个字段的内容
+------------+-----------+-------------------------------------------+
| user       | host      | password                                  |
+------------+-----------+-------------------------------------------+
| root       | localhost | *8E1A3402D66F8DDD8D9D19596B706C6D238C0F34 |
| root       | ax-01     |                                           |
| root       | 127.0.0.1 |                                           |
| root       | ::1       |                                           |
|            | localhost |                                           |
|            | ax-01     |                                           |
| wpuser     | 127.0.0.1 | *E4D18EEE7AEB0071BDB1D931CD44AA9AE0D05293 |
| discuzuser | 127.0.0.1 | *F47A72DB156C9E3F76410F41AC68CE966ACD6BDA |
| cmsuser    | 127.0.0.1 | *A9A4F564B109C6ECCF5EC6E2EB11DBD8925FEEDF |
+------------+-----------+-------------------------------------------+
看到这里,你发任意用户(空用户名)不需要密码就可以登录。显然不行,需要删掉。

删东西前要养成备份的好习惯
[root@ax-01 ~]# mysqldump -uroot -paxianglinux mysql user > /tmp/user.sql

mysql> delete from mysql.user where password='';    //删掉
mysql> select user,host,password from mysql.user;    //再看
+------------+-----------+-------------------------------------------+
| user       | host      | password                                  |
+------------+-----------+-------------------------------------------+
| root       | localhost | *8E1A3402D66F8DDD8D9D19596B706C6D238C0F34 |
| wpuser     | 127.0.0.1 | *E4D18EEE7AEB0071BDB1D931CD44AA9AE0D05293 |
| discuzuser | 127.0.0.1 | *F47A72DB156C9E3F76410F41AC68CE966ACD6BDA |
| cmsuser    | 127.0.0.1 | *A9A4F564B109C6ECCF5EC6E2EB11DBD8925FEEDF |
+------------+-----------+-------------------------------------------+
mysql> flush privileges; 
mysql> quit;

13.5 常用sql语句

开发,DBA需要深入掌握,但是作为系统管理员,基本的得会!

select 查

 select count(*) from mysql.user;  查mysql库的user表有多少行
 select * from mysql.db;  查mysql.db所有内容
 select db from mysql.db; 查mysql.db的db字段
 select db,user from mysql.db; 查看mysql.db的多个字段
 select * from mysql.db where host like '192.168.%';  模糊查询

insert 插入

 insert into db1.t1 values (1, 'abc');  插入数据
 desc db1.t1查看表字段结构,明确插入字符格式

update 修改

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

删除,小心用

 delete from db1.t1 where id=1  //删除id表头字段下,=1的行
 truncate table db1.t1;  //清空表内容,字段表头保留
 drop table db1.t1;    //删除表
 drop database db1;   //删除库
  • 常用数据引擎 myisam innodb
    • 自带的mysql库就是myisam引擎
      • use mysql;
      • show create table uesr\G;
      • 查看count(*)非常快
    • 查看innodb的引擎
      • use db1;
      • show create table t1;
      • 查看count(*)很慢,对大表慎用

13.6 MySQL数据库备份恢复

 备份库  mysqldump -uroot -p123456 mysql > /tmp/mysql.sql
 恢复库 mysql -uroot -p123456 mysql < /tmp/mysql.sql
 备份表 mysqldump -uroot -p123456 mysql user > /tmp/user.sql
 恢复表 mysql -uroot -p123456 mysql < /tmp/user.sql
 备份所有库 mysqldump -uroot -p -A >/tmp/123.sql
 只备份表结构 mysqldump -uroot -p123456 -d mysql > /tmp/mysql.sql

扩展

  1. SQL语句教程 http://blog.51cto.com/zt/206
  2. 什么是事务?事务的特性有哪些? http://blog.csdn.net/yenange/article/details/7556094
  3. 根据binlog恢复指定时间段的数据 http://www.centoscn.com/mysql/2015/0204/4630.html
  4. mysql字符集调整 http://xjsunjie.blog.51cto.com/999372/1355013
  5. 使用xtrabackup备份innodb引擎的数据库 http://www.aminglinux.com/bbs/thread-956-1-1.html
  6. innobackupex 备份 Xtrabackup 增量备份 http://www.aminglinux.com/bbs/thread-1012-1-1.html

© 著作权归作者所有

共有 人打赏支持
阿想
粉丝 0
博文 72
码字总数 69742
作品 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常用语句、mysql备份与恢复

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

若白衣
03/24
0
0
MySQL用户管理、常用SQL语句、MySQL数据库备份恢复

mysql用户管理 1.创建一个普通用户并授权 用法解释说明: grant:授权; all:表示所有的权限(如读、写、查询、删除等操作); .:前者表示所有的数据库,后者表示所有的表; identified by:...

Gary_加油涛
01/15
0
0
mysql用户管理、常用语句、数据分备份恢复

mysql用户管理 创建用户并授权 指定登录ip 使用root用户登录录创建授权新用户: mysql> grant all on . to 'user1'@'127.0.0.1' identified by '123456'; // all 所有操作(增删查改) // 第...

豆渣锅
06/26
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数据库备份恢复

mysql用户管理 新创建一个指定IP的用户,可以访问mysql的某些库某些表 . 所有库的所有表,如果想指定访问某个库某些表,只需要修改名称 user1 指定用户名br/>@后面的ip是指定ip,%表示所有的...

非此即彼
03/25
0
0
第三章:MySQL数据库系统

1、卸载原有的mysql上图中使用rpm方式安装过mysql,所以使用rpm -e msyql --nodeps卸载2、安装mysql之前,需要安装软件开发软件包,如果安装操作系统的时候勾选过“软件开发”,就不用安装了...

春风十里cc
01/01
0
0
2018-3-23 13周5次课 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 '......

alexis7gunner
03/22
0
0
MySQL管理工具

一、MySQL工具 二、mysqladmin工具 三、mysqldump工具(备份用) 一、MySQL工具 mysql是一个简单的命令行SQL工具,该工具支持交互式和非交互式运行 使用范例: 1、使用root账户连接服务器,默...

youshine
2015/07/14
0
0
linux之mysql数据库搭建及sql注入和防御

mysql中文手册下载地址:http://down.51cto.com/data/2244392 sql注入各种姿势:http://wt7315.blog.51cto.com/10319657/1828167 sqlmap注入神器详解:http://wt7315.blog.51cto.com/103196......

wt7315
2016/09/27
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

什么是Base64

一、什么是Base64? 百度百科中对Base64有一个很好的解释:“Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法”。 什么是...

Jack088
2分钟前
0
0
SQL多表联查leftjoin左边加表单

SELECT IFNULL(u.USER_ACCOUNT, o.USER_ACCOUNT) u.USER_ACCOUNT, o.* FROM gh_orders o LEFT JOIN gh_user u ON o.PARENT_ID = u.ROW_ID 1.假如u.USER_ACCOUNT不空返回u.USER_ACCOUNT,否则返......

森火
6分钟前
0
0
expect脚本同步文件、expect脚本指定host和要同步的文件、构建文件分发系统

expect脚本同步文件 更改权限 执行脚本 查看执行结果 expect eof需要加上,作用是等脚本命令执行完再进行退出 expect脚本指定host和要同步的文件 更改权限,执行脚本 构建文件分发系统 需求背...

Zhouliang6
44分钟前
1
0
Hive应用:外部分区表

Hive应用:外部分区表 介绍 Hive可以创建外部分区表。创建表的时候,分区要在建表语句中体现。建完之后,你不会在表中看到数据,需要进行分区添加,使用alter语句进行添加。然后数据才会显示...

星汉
54分钟前
3
0
点击Enter登录

1. 效果 2. 实现过程(记得引入jq文件) //6.回车事件 登录 $(function() { document.onkeydown = function(event) { var e = event || window.event || arguments.callee.caller.arguments......

Lucky_Me
今天
1
0
点击菜单内容切换

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <style> .menu{ height: 38px; background-color: #eeeeee; line-height: 38px; } .mao{ ......

南桥北木
今天
1
0
OSChina 周六乱弹 —— 妹子和游戏哪个更好玩

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @andonny :分享唐朝乐队的单曲《国际歌》 《国际歌》- 唐朝乐队 手机党少年们想听歌,请使劲儿戳(这里) @举个栗子- :日常祈雨 邪恶的大祭...

小小编辑
今天
591
7
流利阅读笔记32-20180721待学习

“人工智能”造假:只有人工,没有智能 Lala 2018-07-21 1.今日导读 当今社会,擅长单个方面的人工智能已经盛行,手机借助 AI 智慧防抖技术帮助大家拍出清晰照片,谷歌研发的 AI 助手将可以帮...

aibinxiao
今天
10
0
我的成长记录(一)

今天突然精神抖擞,在我的博客下新开一项分类>成长记录,专门记录每隔一段时间我的一点感悟吧。因为今天才专门花时间新开这样一个分类,所以以前有过的一些感悟没有记录下来,现在已经想不起...

dtqq
今天
1
0
机器学习管理平台 MLFlow

最近工作很忙,博客一直都没有更新。抽时间给大家介绍一下Databrick开源的机器学习管理平台-MLFlow。 谈起Databrick,相信即使是不熟悉机器学习和大数据的工程湿们也都有所了解,它由Spark的...

naughty
今天
18
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部