MySQL [ERROR] Table 'mysql.user' doesn't exist

    一次源码新装的mysql,由于没有复制my-default.cnf到/etc/my.cnf位置,在启动mysql的时候碰到了无法打开mysql.user表的错误。具体错误为:[ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.user' doesn't exist。下面是该错误的描述及其解决办法。

1、现象描述 [root@HKBO scripts]# service mysqld start Starting MySQL..The server quit without updating PID file (/var/lib/mysql/HKBO.pid).[FAILED]

#查看错误日志 [root@HKBO scripts]# tail /var/log/mysqld.log InnoDB: Apply batch completed 2014-12-08 11:01:37 15721 [Note] InnoDB: 128 rollback segment(s) are active. 2014-12-08 11:01:37 15721 [Note] InnoDB: Waiting for purge to start 2014-12-08 11:01:37 15721 [Note] InnoDB: 5.6.12 started; log sequence number 1600607 2014-12-08 11:01:37 15721 [Note] Server hostname (bind-address): '*'; port: 3306 2014-12-08 11:01:37 15721 [Note] IPv6 is available. 2014-12-08 11:01:37 15721 [Note]   - '::' resolves to '::'; 2014-12-08 11:01:37 15721 [Note] Server socket created on IP: '::'. 2014-12-08 11:01:37 15721 [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.user' doesn't exist 141208 11:01:37 mysqld_safe mysqld from pid file /var/lib/mysql/HKBO.pid ended

# Author : Leshami # Blog   :  http://blog.csdn.net/leshami

2、解决办法 #查看当前的my.cnf配置文件 [root@HKBO scripts]# more /etc/my.cnf |grep -v ^# [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock user=mysql old_passwords=1

[mysqld_safe] log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid

#由于编译安装时指定的路径为/opt/data以及mysql_install_db时指定的datadir也为/opt/data,而my.cnf为缺省的路径 #因此修改datadir至正确路径后,问题解决 [root@HKBO scripts]# vi /etc/my.cnf [root@HKBO support-files]# more /etc/my.cnf |grep datadir datadir=/opt/data

[root@HKBO support-files]# service mysqld start Starting MySQL.[  OK  ]

3、更多参考

  • Linux 下MySQL源码安装完整版
  • MySQL 源码scr.rpm安装的一点注意事项
  • Linux 5 下安装MySQL 5.6(RPM方式)
  • Linux 下卸载MySQL 5

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏运维前线

CentOS6 安装代码检测工具sonarsource

CentOS6 安装sonarsource sonarqube下载地址: https://sonarsource.bintray.com/Distributio...

29290
来自专栏雨过天晴

原 在已安装Apache和MySQL的Ub

16330
来自专栏散尽浮华

[原创]Gerrit中文乱码问题解决方案分享

应开发同事的要求,部署了Gitlab+Gerrit+Jenkins的持续集成环境. 但是发现了一个问题,Gerrit登陆后有中文乱码出现. 具体情况如下: (1...

37950
来自专栏搜云库

CentOs7.3 搭建 MySQL 5.7.19 主从复制,以及复制实现细节分析

CentOs7.3 搭建 MySQL 5.7.19 主从复制,以及复制实现细节分析 概念 主从复制可以使MySQL数据库主服务器的主数据库,复制到一个或多个My...

31750
来自专栏张善友的专栏

学习笔记]快速开发Hibernate

樊欢 java及开源项目爱好者。     Email :heydaymail@hotmail.com     Blog :http://heyay.blogon...

22660
来自专栏Netkiller

Linux 系统与数据库安全

目录 1. 帐号安全 1.1. Shell 安全 1.2. .history 文件 2. 临时文件安全 3. 其他安全问题 4. 防火墙配置 5. 数据库安全 ...

38450
来自专栏散尽浮华

mysqldump数据导出问题和客户端授权后连接失败问题

1,使用mysqldump时报错(1064),这个是因为mysqldump版本太低与当前数据库版本不一致导致的。 mysqldump: Couldn't exe...

26890
来自专栏杨建荣的学习笔记

MySQL迁移文件的小问题(r8笔记第18天)

线上有一台服务器上,里面有一个mysql数据库服务,其实库也很小,就几个G,一直以来是保留了多天的备份集,但是因为业务的关系,这个库其实只有一些 基本的数据查询...

39070
来自专栏乐沙弥的世界

基于Innobackupex的增备及恢复

    MySQL的热备(物理备份)可以采取全备加增量备份的方式来减轻数据库I/O压力及系统资源的占用。增量备份主要是以全备或增量备份为基础,备份那些变更过的页...

10520
来自专栏Linyb极客之路

MySQL数据库“十宗罪”(十大经典错误案例)

Too many connections(连接数过多,导致连接不上数据库,业务无法正常进行)

18720

扫码关注云+社区

领取腾讯云代金券