Mysql 误删 root 账户(MAC)

当MySQL的root账户不慎被删除,本文提供两种恢复方法:通过安全模式启动MySQL跳过权限验证,或修改my.cnf配置文件重启服务。接着,使用特定SQL语句重新创建root账户并赋予所有权限。

mysql 允许账号 drop 自己,如果 root 账户把自己 drop 了。

有两种方式

1, 以安全模式启动

以安全模式启动 MYSQL,跳过权限验证

sudo /usr/local/mysql/bin/mysqld_safe --skip-grant-tables &

或者

修改 my.cnf 并重启 (本质上和上面方法一样,都是跳过权限验证,更麻烦)

sudo vim /etc/my.cnf

[mysqld]
skip-grant-tables
port = 3306

2, 然后登陆

mysql -h127.0.0.1

执行
INSERT INTO mysql.user 
SET user = 'root', 
host = '%', 
authentication_string =Password('123456'), 
Select_priv = 'y',
Insert_priv = 'y',
Update_priv = 'y',
Delete_priv = 'y',
Create_priv = 'y',
Drop_priv = 'y',
Reload_priv = 'y',
Shutdown_priv = 'y',
Process_priv = 'y',
File_priv = 'y',
Grant_priv = 'y',
References_priv = 'y',
Index_priv = 'y',
Alter_priv = 'y',
Show_db_priv = 'y',
Super_priv = 'y',
Create_tmp_table_priv = 'y',
Lock_tables_priv = 'y',
Execute_priv = 'y',
Repl_slave_priv = 'y',
Repl_client_priv = 'y',
Create_view_priv = 'y',
Show_view_priv = 'y',
Create_routine_priv = 'y',
Alter_routine_priv = 'y',
Create_user_priv = 'y',
Event_priv = 'y',
Trigger_priv = 'y',
Create_tablespace_priv = 'y',
ssl_cipher = '',
x509_issuer = '',
x509_subject = '';
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值