MySQL数据库总结(3)数据库的备份与恢复与破解密码,DCL用户权限查
2016-03-13 11:17
726 查看
数据库备份备份数据库内容并不是备份数据库
恢复数据库
DCL
1创建用户
2给用户授权
3撤销授权
4查看权限
删除用户
4如何破解数据库的密码
数据库 –> sql:备份
mysqldump -uroot -p123 mydb3>c:\a.sql –> 备份
sql –> 数据库:恢复
mysql -uroot -p123 mydb3
mysqldump -u用户名 -p密码 库名 表1 表2 表3 > 地址/备份文件名称 导出的是建表语句及inset语句
例如:mysqldump -uroot -p123 mydb1>C:\mydb1.sql (与mysql.exe和mysqld.exe一样, 都在bin目录下)
注意,不要打分号,不要登录mysql,直接在cmd下运行
注意,生成的脚本文件中不包含create database语句,因此在导入数据库的时候应该先创建数据库
如何导出以库为单位导出?
mysqldump -u用户名 -p密码 -B 库1 库2 库3 > 地址/备份文件名称
针对库级的备份文件
Mysql -u用户名 -p密码 < 备份文件地址
针对表级的备份文件
Mysql -u用户名 -p密码 库名< 表级备份文件地址
例如:
先删除mydb1库,再重新创建mydb1库
mysql -uroot -p123 mydb1
这个用户只能对这个数据库有权限,其他数据库你就操作不了了!
用户只能在指定的IP地址上登录
CREATE USER 用户名@‘%’ IDENTIFIED BY ‘密码’;
用户可以在任意IP地址上登录
例如;给user1用户分派在mydb1数据库上的create、alter、drop、insert、update、delete、select权限
GRANT CREATE,ALTER,DROP,INSERT,UPDATE,DELETE,SELECT ON mydb1.* TO user1@localhost;
给用户分派指定数据库上的所有权限
GRANT ALL ON 数据库.* TO 用户名@IP地址;
撤消指定用户在指定数据库上的指定权限
例如;REVOKE CREATE,ALTER,DROP ON mydb1.* FROM user1@localhost;
撤消user1用户在mydb1数据库上的create、alter、drop权限
查看指定用户的权限
2、通过命令行+特殊参数开启mysqld
Mysqld - -skip-grant-tables
3、此时,mysqld服务进程已经打开,并且,不需要权限检查。
mysql –uroot 无密码登陆服务器
4、修改权限表
A: use mysql;
B: update user set password=password(‘11111’)where user=’root’;
C: flush privileges;
5、通过任务管理器,或服务管理,关掉mysqld服务进程
6、再次通过服务管理,打开mysql服务
7、即可用修改后的新密码登陆、
恢复数据库
DCL
1创建用户
2给用户授权
3撤销授权
4查看权限
删除用户
4如何破解数据库的密码
数据库 –> sql:备份
mysqldump -uroot -p123 mydb3>c:\a.sql –> 备份
sql –> 数据库:恢复
mysql -uroot -p123 mydb3
1. 数据库备份(备份数据库内容,并不是备份数据库!)
mysqldump –u用户名 –p密码 数据库名>生成的脚本文件路径 导出的是建表语句及inset语句mysqldump -u用户名 -p密码 库名 表1 表2 表3 > 地址/备份文件名称 导出的是建表语句及inset语句
例如:mysqldump -uroot -p123 mydb1>C:\mydb1.sql (与mysql.exe和mysqld.exe一样, 都在bin目录下)
注意,不要打分号,不要登录mysql,直接在cmd下运行
注意,生成的脚本文件中不包含create database语句,因此在导入数据库的时候应该先创建数据库
如何导出以库为单位导出?
mysqldump -u用户名 -p密码 -B 库1 库2 库3 > 地址/备份文件名称
2. 恢复数据库
第一种方式:不登录mysql,直接在cmd下运行针对库级的备份文件
Mysql -u用户名 -p密码 < 备份文件地址
针对表级的备份文件
Mysql -u用户名 -p密码 库名< 表级备份文件地址
例如:
先删除mydb1库,再重新创建mydb1库
mysql -uroot -p123 mydb1
第二种方式:登录mysql //对于库级的备份文件 Mysql> source 备份文件地址 //对于表级的备份文件 Mysql>use 库名 Mysql>source 备份文件地址 例如: 先删除mydb1库,再重新创建mydb1库 切换到mydb1库 source c:\mydb1.sql
3 、DCL
一个项目创建一个用户!一个项目对应的数据库只有一个!这个用户只能对这个数据库有权限,其他数据库你就操作不了了!
1、创建用户
CREATE USER 用户名@IP地址 IDENTIFIED BY ‘密码’;用户只能在指定的IP地址上登录
CREATE USER 用户名@‘%’ IDENTIFIED BY ‘密码’;
用户可以在任意IP地址上登录
2、给用户授权
GRANT 权限1, … , 权限n ON 数据库.* TO 用户名@IP地址例如;给user1用户分派在mydb1数据库上的create、alter、drop、insert、update、delete、select权限
GRANT CREATE,ALTER,DROP,INSERT,UPDATE,DELETE,SELECT ON mydb1.* TO user1@localhost;
给用户分派指定数据库上的所有权限
GRANT ALL ON 数据库.* TO 用户名@IP地址;
3、撤销授权
REVOKE 权限1, … , 权限n ON 数据库.* FROM 用户名@IP地址;撤消指定用户在指定数据库上的指定权限
例如;REVOKE CREATE,ALTER,DROP ON mydb1.* FROM user1@localhost;
撤消user1用户在mydb1数据库上的create、alter、drop权限
4、查看权限
SHOW GRANTS FOR 用户名@IP地址查看指定用户的权限
5. 删除用户
DROP USER 用户名@IP地址4、如何破解数据库的密码:
1、通过任务管理器或者服务管理,关掉mysql(服务进程)2、通过命令行+特殊参数开启mysqld
Mysqld - -skip-grant-tables
3、此时,mysqld服务进程已经打开,并且,不需要权限检查。
mysql –uroot 无密码登陆服务器
4、修改权限表
A: use mysql;
B: update user set password=password(‘11111’)where user=’root’;
C: flush privileges;
5、通过任务管理器,或服务管理,关掉mysqld服务进程
6、再次通过服务管理,打开mysql服务
7、即可用修改后的新密码登陆、
相关文章推荐
- mysql数据库表修改某一列的类型
- MySQL数据库总结(2)增删改查
- 不停止MySQL服务增加从库的两种方式【转载】
- MySQL:unknown variable 'master-host=masterIP' [ERROR] Aborting
- MySQL数据库总结(1)入门语句
- mac mysql安装流程
- mysql 安装不出现配置向导
- MySQL 索引优化 btree hash rtree
- Mac版下Mysql错误修正
- Mysql代码建外键问题
- C# 使用MySqlBulkLoader 批量导入数据到Mysql
- MySQL简单入门——安装配置启动登录
- MySQL的配置
- Phantomjs+Nodejs+Mysql数据抓取(1.数据抓取)
- 2016/3/13 MySQL 增删查改 CRUD 用代码实现
- ubuntu安装/启动/停止/重启MySQL
- MySQL中复制数据表中的数据到新表中的操作教程
- MySql 查询以逗号分隔的字符串的方法(正则)
- 利用MySQL数据库来处理中英文取首字母排序
- MySQL数据库获取汉字拼音的首字母函数