shell> chown -R mysql data mysql-files
这一步都没出现什么错误,满以为安装成功了,然而执行下面这句
shell>bin/mysqld_safe --user=mysql &
却显示mysql启动错误!错误log没有记录下来,搞了半天也不知道错误在哪里,没办法,只好放弃这种安装。
2.接着使用yum方式安装
这是相对来说最简单的安装方式了,官方安装说明文档的url如下:
http://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/
按照文档中所述,先下载并安装mysql最新的镜像源,然后执行
# yum install mysql-community-server
非常顺利的完成了安装,因为有了上次的经历,心里很担心服务启动不了,接着执行
# service mysqld start
果然出问题了,mysqld启动错误,出现下面的提示:
Redirecting to /bin/systemctl start mysqld.service
Job for mysqld.service failed. See 'systemctl status mysqld.service' and 'journalctl -xn' for details.
# service mysqld status
Redirecting to /bin/systemctl status mysqld.service
mysqld.service - MySQL Server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled)
Active: failed (Result: start-limit) since Tue 2015-12-08 13:57:22 CST; 17s ago
Process: 31004 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited, status=1/FAILURE)
Process: 30988 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
Dec 08 13:57:22 iZ25lox0jlhZ systemd[1]: Failed to start MySQL Server.
Dec 08 13:57:22 iZ25lox0jlhZ systemd[1]: Unit mysqld.service entered failed state.
Dec 08 13:57:22 iZ25lox0jlhZ systemd[1]: mysqld.service holdoff time over, scheduling restart.
Dec 08 13:57:22 iZ25lox0jlhZ systemd[1]: Stopping MySQL Server...
Dec 08 13:57:22 iZ25lox0jlhZ systemd[1]: Starting MySQL Server...
Dec 08 13:57:22 iZ25lox0jlhZ systemd[1]: mysqld.service start request repeated too quickly, refusing to start.
Dec 08 13:57:22 iZ25lox0jlhZ systemd[1]: Failed to start MySQL Server.
Dec 08 13:57:22 iZ25lox0jlhZ systemd[1]: Unit mysqld.service entered failed state.
google了好半天,发现这篇文档
http://stackoverflow.com/questions/31813552/linux-antergos-install-mysql
安装完应该先检查一下/var/lib/mysql目录下的文件权限,执行
chown mysql:mysql -R /var/lib/mysql
然后重新启动mysql服务
# service mysqld start
这次果然成功启动mysql服务了!高兴之余,继续按安装文档的说明,执行
# grep 'temporary password' /var/log/mysqld.log
执行这条命令居然什么都没显示,没有查找到初始临时密码!
这是肿么回事?只有继续google,找到下面这篇文档
http://mirror.metrocast.net/mysql/doc/refman/5.1/zh/problems.html#resetting-permissions
文中提到如何复位根用户密码,于是按照文档说明开始执行,然而,执行到这句
shell> mysqld_safe --init-file=~/mysql-init &
才发现yum安装的mysql 5.7.10社区版居然没有mysqld_safe这个文件!
为什么我使用yum方式安装mysql,没有生成临时密码,恳请读了此文的数据库大牛给释疑一下。
顿时感觉陷入了困境,一筹莫展,万般无奈之下,只好用最后的办法试一下。
3.使用rpm文件安装mysql
首先在http://dev.mysql.com/downloads/mysql/,选择Red Hat Enterprise Linux / Oracle Linux下载了519M的Red Hat Enterprise Linux 7 / Oracle Linux 7 (x86, 64-bit), RPM Bundle5.7.10,文件名是mysql-5.7.10-1.el7.x86_64.rpm-bundle.tar
解压之,出现了12个rpm文件,然后参考下面的url:
http://www.cnblogs.com/5201351/p/4912614.html
(这篇是5.7.9的说明文档,我安装的是5.7.10版,最后的小版本号不一致)
文中说明,只需要安装如下4个软件包即可,我们可以使用rpm -ivh命令进行安装
mysql-community-common-5.7.9-1.el7.x86_64.rpm
mysql-community-libs-5.7.9-1.el7.x86_64.rpm --(依赖于common)
mysql-community-client-5.7.9-1.el7.x86_64.rpm --(依赖于libs)
mysql-community-server-5.7.9-1.el7.x86_64.rpm --(依赖于client、common)
初始化数据库,我们使用如下几条命令均可,效果都是一样的
[root@5201351 ~]# mysql_install_db --datadir=/var/lib/mysql //必须指定datadir,执行后会生成~/.mysql_secret密码文件
[root@5201351 ~]# mysqld --initialize //新版的推荐此方法,执行后会在/var/log/mysqld.log生成随机密码
注意,按文档的意思,似乎是上面两条命令执行一条就可以了。我在执行第二条命令的时候,出现了error错误,遂没管这个错误,直接进入下一步。
datadir=/var/lib/mysql是数据库文件的放置路径。
更改mysql数据库目录的所属用户及其所属组,然后启动mysql数据库
[root@5201351 ~]# chown mysql:mysql /var/lib/mysql -R
[root@5201351 ~]# systemctl start mysqld.service //启动mysql数据库服务
mysql这时候顺利的启动起来了!又是一阵狂喜,赶紧到/root目录下寻找.mysql_secret文件。迫不及待的打开,看到了一个生成的临时密码。执行
# mysql -uroot -p
输入密码,成功登录mysql!
至此,在尝试了3种安装方法后,最终使用rpm文件成功安装了最新mysql community server 5.7.10版!
2
顶
1
踩
分享到:
2015-12-08 23:17
浏览 59310
分类:数据库
评论
3 楼
weir2009
2015-12-30
跟我的一样一样的 我是源码编译 一直不通过
2 楼
sharong
2015-12-19
yezhi989 写道
遇到同样问题
改了权限还是启动不了
查看了日志信息 发现如下错误:
2015-12-15T05:58:29.591659Z 0 [ERROR] InnoDB: Operating system error number 13 in a file operation.
2015-12-15T05:58:29.591714Z 0 [ERROR] InnoDB: The error means mysqld does not have the access rights to the directory.
2015-12-15T05:58:29.591727Z 0 [ERROR] InnoDB: os_file_get_status() failed on './ibdata1'. Can't determine file permissions
2015-12-15T05:58:29.591743Z 0 [ERROR] InnoDB: Plugin initialization aborted with error Generic error
2015-12-15T05:58:30.207228Z 0 [ERROR] Plugin 'InnoDB' init function returned error.
2015-12-15T05:58:30.207298Z 0 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
2015-12-15T05:58:30.207311Z 0 [ERROR] Failed to initialize plugins.
2015-12-15T05:58:30.207318Z 0 [ERROR] Aborting
数据库文件的权限信息:
[root@localhost lib]# ll mysql
total 110628
-rw-r-----. 1 mysql mysql 56 Dec 15 13:56 auto.cnf
-rw-r-----. 1 mysql mysql 408 Dec 15 13:56 ib_buffer_pool
-rw-r-----. 1 mysql mysql 12582912 Dec 15 13:56 ibdata1
-rw-r-----. 1 mysql mysql 50331648 Dec 15 13:56 ib_logfile0
-rw-r-----. 1 mysql mysql 50331648 Dec 15 13:56 ib_logfile1
drwxr-x---. 2 mysql mysql 4096 Dec 15 13:56 mysql
drwxr-x---. 2 mysql mysql 8192 Dec 15 13:56 performance_schema
drwxr-x---. 2 mysql mysql 8192 Dec 15 13:56 sys
谁知道怎么处理呢 求思路!
错误第二行显示是权限问题,是不是mysql账号创建有问题
1 楼
yezhi989
2015-12-15
遇到同样问题
改了权限还是启动不了
查看了日志信息 发现如下错误:
2015-12-15T05:58:29.591659Z 0 [ERROR] InnoDB: Operating system error number 13 in a file operation.
2015-12-15T05:58:29.591714Z 0 [ERROR] InnoDB: The error means mysqld does not have the access rights to the directory.
2015-12-15T05:58:29.591727Z 0 [ERROR] InnoDB: os_file_get_status() failed on './ibdata1'. Can't determine file permissions
2015-12-15T05:58:29.591743Z 0 [ERROR] InnoDB: Plugin initialization aborted with error Generic error
2015-12-15T05:58:30.207228Z 0 [ERROR] Plugin 'InnoDB' init function returned error.
2015-12-15T05:58:30.207298Z 0 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
2015-12-15T05:58:30.207311Z 0 [ERROR] Failed to initialize plugins.
2015-12-15T05:58:30.207318Z 0 [ERROR] Aborting
数据库文件的权限信息:
[root@localhost lib]# ll mysql
total 110628
-rw-r-----. 1 mysql mysql 56 Dec 15 13:56 auto.cnf
-rw-r-----. 1 mysql mysql 408 Dec 15 13:56 ib_buffer_pool
-rw-r-----. 1 mysql mysql 12582912 Dec 15 13:56 ibdata1
-rw-r-----. 1 mysql mysql 50331648 Dec 15 13:56 ib_logfile0
-rw-r-----. 1 mysql mysql 50331648 Dec 15 13:56 ib_logfile1
drwxr-x---. 2 mysql mysql 4096 Dec 15 13:56 mysql
drwxr-x---. 2 mysql mysql 8192 Dec 15 13:56 performance_schema
drwxr-x---. 2 mysql mysql 8192 Dec 15 13:56 sys
谁知道怎么处理呢 求思路!