mysql数据库密码的修改与恢复
Posted leilei001
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql数据库密码的修改与恢复相关的知识,希望对你有一定的参考价值。
一、mysql密码的修改与恢复
1.修改密码
mysqladmin -u root -p123 password 456
数据库内修改
method.first:
update mysql.user set password=password(‘123‘) where user=‘root‘ and host=‘localhost‘;
flush privileges;
method.second:
set password for root@‘localhost‘ =password(‘123‘);
注: 此方法无序刷新权限
method.third:
mysql_secure_installation
注: 安全配置向导,会对数据库进行简单的优化
二、忘记mysql密码后的恢复
1.跳过mysql安全验证,直接mysql无密码登录,然后进入修改密码
1
2
|
/etc/init.d/mysqld stop mysqld_safe --skip-grant-table --user=mysql &>/dev/ null & |
1
|
<span style= "font-size: 14px;" ><br>三、如何防止mysql密码泄露<br></span> |
1. 设置环境变量强制linux不记录敏感历史命令
临时生效(命令行操作):HISTCONTROL=ignorespace 然后[ root@ 001 ~] # mysql -uboy -pboy123
永久生效:
echo ‘ HISTCONTROL=inorespace ‘ >>/etc/bashrc 然后source生效
2. 通过history删除命令行记录
清空所有记录 history -c
删除指定行记录 history -d 行号
清空历史记录文件 >~/.bash_history
3.把密码写入my.cnf 配置文件的 [ mysqld ] 下添加 skip-grant-tables 重启数据库生效
四、数据库的备份与恢复
1、单库备份与还原
1
2
3
4
5
6
7
|
备份 mysqldump -uroot -p123456 lll>/opt/backup/lll.sql 注:此操作只备份其中的表(包括创建表的语句和数据) 还原 mysql -uroot -p123 -e ‘ create database lll;‘ mysql -uroot -p123 lll < /opt/backup/lll.sql |
2.多库备份与还原
1
2
3
4
5
|
备份 mysqldump -uroot -p123 库名 表1 表2>/opt/backup/mysql_bak_db.sql 还原 mysql -uroot -p123 库名 </opt/backup/mysql_bak_db.sql |
3.全库备份
1
2
3
|
mysqldump -uroot -p123 -A >/opt/backup/mysql_bak_db.sql 或 mysqldump -uroot -p123 --all-databases > /opt/backup/mysql_bak_db.sql |
4.还原备份
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
#备份lol数据库 [root@ c6s02 ~]# mysqldump -uroot -p123456 -B lol >lol.sql #先删除lol数据库 [root@ c6s02 ~]# mysql -uroot -p123456 mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | lol | | mysql | | performance_schema | | test | | wg | +--------------------+ 6 rows in set (0.00 sec) mysql> drop database lol; Query OK, 3 rows affected (0.03 sec) mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | test | | wg | +--------------------+ 5 rows in set (0.00 sec) mysql> q #测试恢复并查看 [root@ c6s02 ~]# mysql -uroot -p123456 <lol.sql Warning: Using a password on the command line interface can be insecure. [root@ c6s02 ~]# mysql -uroot -p123456 mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | lol | | mysql | | performance_schema | | test | | wg | +--------------------+ 6 rows in set (0.00 sec) mysql> select * from lol.hero; +----+--------+--------+-----------+--------+ | id | 角色 | 职业 | 攻击力 | 血量 | +----+--------+--------+-----------+--------+ | 1 | 蛮王 | 战士 | 200 | NULL | | 2 | 狗头 | 战士 | 100 | NULL | | 3 | 剑圣 | 战士 | 300 | NULL | +----+--------+--------+-----------+--------+ 3 rows in set (0.00 sec) |
(2)、method.second:
1
2
|
[root@ c6s02 ~]# mysql -uroot -p123456 mysql> source /root/lol.sql |
更多操作详情参考如下:
https://github.com/crazywjj/bawei
以上是关于mysql数据库密码的修改与恢复的主要内容,如果未能解决你的问题,请参考以下文章
修改MySQL密码报错“ERROR 1819 (HY000): Your password does not satisfy the current policy requirements“(代码片段
Oracle 数据库 - 使用UEStudio修改dmp文件版本号,解决imp命令恢复的数据库与dmp本地文件版本号不匹配导致的导入失败问题,“ORACLE error 12547”问题处理(代码片段