当前位置:  开发笔记 > 后端 > 正文

无法打开和锁定权限表:表'mysql.user'不存在

如何解决《无法打开和锁定权限表:表'mysql.user'不存在》经验,为你挑选了2个好方法。

我使用二进制zip安装了MySQL社区服务器5.7.10.我解压缩了zip c:\mysql并在其中创建了数据文件夹c:\mysql\data.我创建了配置文件my.ini并将其放入c:\mysql(提取的zip的根文件夹).以下是my.ini文件的内容

# set basedir to your installation path
basedir=C:\mysql
# set datadir to the location of your data directory
datadir=C:\mysql\data

我正在尝试使用启动MySQL mysqld --console,但过程因以下错误而中止.

2015-12-29T18:04:01.141930Z 0 [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.user' doesn't exist
2015-12-29T18:04:01.141930Z 0 [ERROR] Aborting 

任何有关这方面的帮助将不胜感激.



1> anonymous..:

您必须通过运行以下命令来初始化数据目录

mysqld --initialize [随机root密码]

mysqld --initialize-insecure [使用空白root密码]


但是,这不是MySQL**5.6**及以下版本的选项.我们如何处理错误`无法打开和锁定权限表:表'mysql.user'不存在`那么在这样的版本上?*究竟*导致了这个问题,如何在没有安装的情况下修复它?
找到相关主题:http://dba.stackexchange.com/q/115701/9405和http://superuser.com/q/660078/78897

2> Charlie..:

在Maria DB上,您可以使用mysql_install_db。就我而言,我将环境变量用于数据路径。不仅mysqld需要知道数据的位置(通过命令行指定),而且安装脚本也需要知道。

您可以通过以下方式调用安装脚本来指定数据路径:

mysql_install_db --user=root --datadir=$db_datapath

推荐阅读
李桂平2402851397
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有