main^2
黄海 11 months ago
parent 2178c6eccb
commit d28ae68101

@ -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;**

Loading…
Cancel
Save