我有一个 CentOS 6.6,系统上已经安装了一个正在运行的 Mysql 和一个 mysql 服务器,以及一个正在运行的 mysqld 服务,但我需要全新安装,所以我通过 yum 进行了整个删除,并删除了旧的 Mysql 残留文件(仔细检查剩余文件)。
安装:
[root@sputnik mysql]# yum install mysql mysql-server
安装成功完成,没有错误。
有几种不同的方式启动Mysql服务:
[root@sputnik mysql]# service mysqld start
MySQL Daemon failed to start.
Starting mysqld: [FAILED]
[root@sputnik mysql]# mysql
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
[root@sputnik mysql]# mysqld_safe
150127 11:44:39 mysqld_safe Logging to '/var/lib/mysql/sputnik.fadata.eu.err'.
150127 11:44:39 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
150127 11:44:44 mysqld_safe mysqld from pid file /var/lib/mysql/sputnik.fadata.eu.pid ended
/var/lib/mysql/mysql.sock这个文件在系统中的任何地方都不存在,通过研究我发现它是在mysqld服务启动期间生成的,但服务拒绝启动,因为它丢失了?
/var/lib/mysql/sputnik.fadata.eu日志文件包含:
150127 11:36:07 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
150127 11:36:07 [ERROR] Can't find messagefile '/usr/share/mysql/english/errmsg.sys'
/usr/libexec/mysqld: Unknown error 1146
150127 11:36:07 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
150127 11:36:07 InnoDB: Initializing buffer pool, size = 8.0M
150127 11:36:07 InnoDB: Completed initialization of buffer pool
150127 11:36:07 InnoDB: Started; log sequence number 0 44233
150127 11:36:07 [ERROR] Aborting
/var/log/mysqld.log不包含任何内容,
/var/运行/mysqld是一个空目录
已经检查/尝试过:
- 我已经尝试过几次mysql安全安装和完全重新安装,
- 尝试手动插入 errmsg.sys 文件,
- 尝试手动安装初始表和数据库。 Mysql用户存在它是所有者并对其文件拥有必要的权限,
- 尝试通过init.d和所有其他方式启动mysql服务和mysqld服务,不包含 mysql 或 mysqld 的服务正在运行。
基本上我尝试了在论坛上找到的所有内容,所以问题是我需要安装并设置 mysql 服务才能运行。这些是我的细节和错误。如果我需要发布更多详细信息,请告诉我。
答案1
终于解决了...
如果有人遇到类似的情况,没有安装 mysql-server,在确保安装步骤正确但服务无法启动或创建必要的文件后,请参阅以下内容:
问题是: 我查看了我的存储库,发现了错误,我损坏了存储库,导致下载和安装了错误的 mysql 服务器版本或其他内容。
解决方案:
完全删除Mysql和所有文件,找到正确的repo rpm包http://dev.mysql.com/downloads/repo/yum/通过下载正确的版本并安装rpm包yum localinstall
,验证是否启用了正确的repo:
# yum repolist enabled | grep "mysql.*-community.*"
一次只允许启用一个版本!
然后通过yum再次安装mysql-server
yum install mysql-community-server
再次运行 mysqld 服务,它将创建所有必需的文件和表,并且不会出现错误。
答案2
另一种解决方案是更新软件包。
待办事项新鲜的centos安装(mysql还没有安装):
yum check-update
yum update
yum install mysql mysql-server