|
|
|
@ -124,32 +124,65 @@ sql-mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_
|
|
|
|
|
socket=/tmp/mysql.sock
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
#### 启动
|
|
|
|
|
|
|
|
|
|
```shell
|
|
|
|
|
/usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf --user=mysql --datadir=/var/mysql_bkdata/ &
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
#### 登录数据库
|
|
|
|
|
#### 启动$Mysql$
|
|
|
|
|
|
|
|
|
|
```shell
|
|
|
|
|
/usr/local/mysql/bin/mysql -uroot
|
|
|
|
|
/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --user=mysql --datadir=/var/mysql_bkdata/&
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
#### 进入$Mysql$
|
|
|
|
|
|
|
|
|
|
```shell
|
|
|
|
|
/etc/init.d/mysqld stop
|
|
|
|
|
|
|
|
|
|
mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
|
|
|
|
|
mysql
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
**删除多余的触发器**
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
```sql
|
|
|
|
|
mysql> select trigger_schema,trigger_name from information_schema.triggers;
|
|
|
|
|
+----------------+----------------------------+
|
|
|
|
|
| trigger_schema | trigger_name |
|
|
|
|
|
+----------------+----------------------------+
|
|
|
|
|
| sys | sys_config_insert_set_user |
|
|
|
|
|
| sys | sys_config_update_set_user |
|
|
|
|
|
+----------------+----------------------------+
|
|
|
|
|
2 rows in set (0.02 sec)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
有两个没有删除掉的触发器,会导致后面的修改密码失败,
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
找到自己数据恢复的目录,查找以“.trg”为结尾的触发器文件,这里数据恢复目录为/var/mysql_bkdata/,执行find查找口令:
|
|
|
|
|
|
|
|
|
|
**上面基本完成数据的恢复。考虑到恢复完成后,表mysql.user中不包含在RDS实例中创建的用户,需要新建。在新建用户前,执行如下命令**
|
|
|
|
|
find /var/mysql_bkdata/ -iname *.trg
|
|
|
|
|
|
|
|
|
|
**delete from mysql.db where user<>'root' and char_length(user)>0;**
|
|
|
|
|
rm -rf /var/mysql_bkdata/mysql/user.TRG
|
|
|
|
|
rm -rf /var/mysql_bkdata/mysql/proxies_priv.TRG
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
**delete from mysql.tables_priv where user<>'root' and char_length(user)>0;**
|
|
|
|
|
#### 授权与创建用户
|
|
|
|
|
|
|
|
|
|
```sql
|
|
|
|
|
退出Mysql,重新登录进来,切换到mysql.user表,重新更新密码
|
|
|
|
|
|
|
|
|
|
update mysql.user set authentication_string=PASSWORD("DsideaL147258369") where user='root' and host='localhost';
|
|
|
|
|
|
|
|
|
|
flush privileges;
|
|
|
|
|
|
|
|
|
|
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'IDENTIFIED BY 'DsideaL147258369' WITH GRANT OPTION;
|
|
|
|
|
|
|
|
|
|
flush privileges;
|
|
|
|
|
exit
|
|
|
|
|
|
|
|
|
|
/etc/init.d/mysqld restart
|
|
|
|
|
mysql -uroot -pDsideaL147258369
|
|
|
|
|
|
|
|
|
|
# 添加上项目中的ycharge用户
|
|
|
|
|
CREATE USER 'ycharge'@'localhost' IDENTIFIED BY 'ycharge';
|
|
|
|
|
GRANT ALL PRIVILEGES ON *.* TO 'ycharge'@'%'IDENTIFIED BY 'ycharge' WITH GRANT OPTION;
|
|
|
|
|
flush privileges;
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
**flush privileges;**
|
|
|
|
|