清除数据库并清除一些默认帐户后,根会被删除。刷新特权后的新根已忘记授予的任何权限。有一个跳过授权表的mysqld选项。
复制代码代码如下所示:
# / usr / / libexec mysqld -- verbos --帮助
的MySQL5.5手册介绍了以下
复制代码代码如下所示:
——跳过赠款表
此选项使服务器在不使用特权系统的情况下启动,这使任何人都可以访问服务器对所有数据库的无限制访问。你可以使一个正在运行的服务器开始使用授权表又由系统shell执行mysqladmin冲水特权或mysqladmin reload命令,或通过发行一个MySQL FLUSH PRIVILEGES语句连接到服务器后。这个选项也抑制了插件的用户自定义函数(UDF),加载和预定的事件。无论如何,要使用插件加载选项,可以导致加载插件。
——如果MySQL是使用禁用授予选项选项配置的,那么跳过赠款表是不可用的。看到
mysqld_safe是一个Unix / Linux系统下的MySQL服务器启动脚本,这个脚本增加了一些安全功能。在启动MySQL服务器后,它将继续监视其操作,并在出现错误时重新启动服务器。
复制代码代码如下所示:
# mysqld_safe --跳过授权表
如果没有根帐户,请添加一个
复制代码代码如下所示:
插入用户设置用户= 'root,主机= 'localhost ',ssl_cipher = '',x509_issuer = '',x509_subject =;
此时直接输入MySQL连接并添加权限,您不能使用授权命令,只更新
复制代码代码如下所示:
更新用户设置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 alter_priv = = Y,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 =用户= 'root;
注意,我使用MySQL作为5.5版本。可能有不同的SQL语句或其他操作中的位置。完成句子后,需要刷新权限,并且可以再次登录。