(本文由言念小文原创,转载请注明出处)node
最近安装mysql8时,遇到了一些问题,记录下来做为之后操做指导资料。mysql
Linux上mysql安装方法我的目前使用的有两种:linux
一种是基于rpm安装;sql
另外一种就是在windows上将安装包下载下来,而后经过ftp、lrzsz等工具将包传输到linux,而后再手动解压安装。windows
因为个人系统为centos,所以这里直接使用rpm安装。centos
STEP1 检查系统是否已安装mysql,自带了就卸载掉;工具
STEP2 查看rpm资源包,选择与当前linux系统对应的资源包;centos7
STEP3 下载与系统对应的rpm资源包;spa
STEP4 安装rpm包;3d
STEP5 安装mysql;
STEP6 mysql安装结果验证;
STEP7 启动mysql;
STEP8 查看mysql运行状态;
STEP9 首次启动设置root用户帐号和密码;
其中STEP7 STEP9为重点关注步骤踩坑步骤。
安装过程当中请确保当前linux系统为root用户,安装前建立一个系统用户mysql做为dba用户。
rpm -qa | grep mysql #检查系统是否已安装mysql
(若是系统已安装mysql,能够卸载:
rpm -e mysql #普通模式删除
rpm -e --nodeps mysql # 强力删除模式,若是使用上面命令删除时,提示有依赖的其它文件,则用该命令能够对其进行强力删除)
Centos中使用yum命令安装mysql,安装前须要去获取对应的rpm资源包。
首先在 https://dev.mysql.com/downloads/repo/yum/ 查询rpm资源包,请注意:先查看系统的版本,再选择与系统匹配的资源包。
图1
图2
如图1图2所示,个人系统是centos7,由于我选择红框标记处对应的rpm包。
使用wget命令下载rpm资源包: “wget http://repo.mysql.com/资源包名称”,即wget http://repo.mysql.com/mysql80-community-release-el7-3.noarch.rpm
说明:下载的rpm包会下载到当前执行命令的目录
rpm安装命令为:rpm -ivh rpm-pathname
执行命令:rpm -ivh mysql80-community-release-el7-3.noarch.rpm
说明:rpm-pathname为下载的rpm包的全路径。
执行命令yum install mysql-server安装mysql,这个过程比较长,若是中途中断,能够下次直接执行该命令继续安装。
Mysql安装完成后,须要验证一下mysql是否安装成功:
执行命令 mysqladmin --version,出现以下图信息则说明安装ok。
chown mysql:mysql -R /var/lib/mysql
mysql启动前必定要保证ibdata1可写,不然没法启动mysql,查看/var/log/.mysqld.log日志,报下图错误:
所以须要改变一下目录读写权限:
执行命令:chmod -R 777 /var/lib/mysql
PS:我这里操做比较粗暴,建议只修改/var/lib/mysql/ibdata1的读写权限
执行命令:mysqld --initialize
该动做会为root用户在/var/log/mysqld.log中生成一个初始密码
执行命令:systemctl start mysqld
若是mysql启动失败,去查看/var/log/mysqld.log中失败缘由,根据日志可以找到对应解决方法。
执行命令:systemctl status mysqld
Mysql启动成功会看到下图日志:
Mysql8.0以前的版本,root用户的密码默认为空,可直接修改root用户的密码。Mysql8.0及以后的版本,修改root初始密码,与以前版本不一样,使用以前的方法:
mysqladmin -u root password ‘9527’
结果报错:
还记得步骤STEP7.3吗,这一步在/var/log/mysqld.log产生了一个root用户的初始密码。执行命令查看root用户的初始密码以下图。
执行命令:cat /var/log/mysqld.log
图中红框标记处,就是root用户的初始密码。
执行命令:mysql -u root -p
而后输入初始密码登陆成功,以下图:
修改root用户登陆密码,而后退出登陆状态,在此从新使用新密码登陆,验证成功。至此,mysql初步安装完成。
ALTER USER root@localhost IDENTIFIED BY '9527'
exit