mysql误删root用户恢复方法_MySQL教程
推荐:MySQL编程中的6个实用技巧每一行命令都是用分号(;)作为结束 对于MySQL,第一件你必须牢记的是它的每一行命令都是用分号(;)作为结束的,但当一行MySQL被插入在PHP代码中时,最好把后面的分号省略掉,例如: 代码如下: mysql_query(INSERT INTO tablename(first_name,last_name)VALUES('$first_na
装完数据库清理一些默认账号的时候不小心把root删除了,flush privileges 之后的新 root 忘了grant任何权限,查看mysqld选项里面有个 −−skip-grant-tables
代码如下:
#/usr/libexec/mysqld --verbos --help
mysql5.5手册说明如下
代码如下:
--skip-grant-tables
This option causes the server to start without using the privilege system at all, which gives anyone with access to the server unrestricted access to all databases. You can cause a running server to start using the grant tables again by executing mysqladmin flush-privileges or mysqladmin reload command from a system shell, or by issuing a MySQL FLUSH PRIVILEGES statement after connecting to the server. This option also suppresses loading of plugins, user-defined functions (UDFs), and scheduled events. To cause plugins to be loaded anyway, use the --plugin-load option.
--skip-grant-tables is unavailable if MySQL was configured with the --disable-grant-options option. See Section 2.10.2, “Typical configure Options”.
mysqld_safe是Unix/Linux系统下的MySQL服务器的一个启动脚本。这个脚本增加了一些安全特性,会在启动MySQL服务器以后继续监控其运行情况,并在出现错误的时候重新启动服务器。后台启动mysql
代码如下:
#mysqld_safe --skip-grant-tables &
如果没有root账户就添加一个
代码如下:
INSERT INTO user SET User='root',Host='localhost',ssl_cipher='',x509_issuer='',x509_subject='';
直接输入mysql连接并添加权限,这时候是不能使用grant命令的,只能用update
代码如下:
UPDATE user SET 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',authentication_string='' WHERE User='root';
注意我用的是mysql是5.5版本,可能操作过程中sql语句或其他地方有不同,语句执行完毕之后需要flush privileges ,还可能要重新登录才行。
分享:Centos中彻底删除Mysql(rpm、yum安装的情况)我用的centos6,mysql让我整出了各种问题,我想重装一个全新的mysql,yum remove mysql-server mysql之后再install并不能得到一个干净的mysql,原来的/etc/my.cnf依然没变,datadir里面的数据已没有任何变化,手动删除/etc/my.cnf,/usr/lib/mysql,/usr/share/mysql,
- MySQL编程中的6个实用技巧
- Centos中彻底删除Mysql(rpm、yum安装的情况)
- Mysql修改datadir导致无法启动问题解决方法
- mysql 查询重复的数据的SQL优化方案
- mysql的左右内连接用法实例
- mysql中You can’t specify target table for update in FROM clau
- MySQL查询和修改auto_increment的方法
- MySQL中的if和case语句使用总结
- Centos5.5中安装Mysql5.5过程分享
- /var/log/pacct文件导致MySQL启动失败的案例分享
- MySQL中在查询结果集中得到记录行号的方法
- CentOS下php使用127.0.0.1不能连接mysql的解决方法
- 相关链接:
- 教程说明:
MySQL教程-mysql误删root用户恢复方法。