在误删除data目录后 的一系列操作

本文详细介绍了在不重装数据库的情况下,如何通过重新初始化MySQL的data目录来修复数据库完整性及权限表的问题。包括使用mysqld命令进行初始化、设置临时密码、更新root密码、创建新用户并授权,以及在配置文件中加入特定参数以实现表函数复制等功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

删除data目录下的一部分文件之后导致数据库不整,权限表也遭到了破坏,所以打算在不重装数据库的情况下进行data目录的重新初始化。


使用如下命令再进行一次尝试

./bin/mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --initialize

会在控制台中生成默认的密码:
root : xxx

启动停止命令

# service mysqld start                                               # 启动服务
# service mysqld restart                                             # 重启服务
# service mysqld stop                                                # 停止服务

重新初始化data目录后 root 没有密码,需要在配置my.cnf中添加如下的参数

[mysql]
skip-grant-tables

修改root 密码, 然后进行重新启动

 update user set authentication_string = password('_Q<gVwu(j4u8aaa'),password_last_changed=now() where user='root';
 
FLUSH PRIVILEGES;

创建用户名并且进行授权

CREATE USER 'test'@'%' IDENTIFIED BY 'test';
grant all privileges on `platform_plus`.* to 'test'@'%' identified by 'test';
FLUSH PRIVILEGES;

表函数在进行复制时,配置文件加上如下参数

### 在复制函数的时候需要加上如下的参数

SET GLOBAL log_bin_trust_function_creators = 1;

复制数据表的时候可以使用navicat 的 数据复制功能

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值