MysqlServer的安装部署

在Linux上安装mysql5.7的示例。由于一些老系统镜像默认的源一般为mysql5.1左右,要想安装较高版本的mysql数据库,则需要手动更新源。

准备

首先切换到管理员用户,执行rpm -qa | grep mysql

如果命令返回结果存在任意项,则先卸载出现的mysql相关项,以避免安装冲突或其他异常。

例如:出现mysql-libs-5.1.71-1.el6.x86_64,则使用卸载命令rpm -e --nodeps mysql-libs-5.1.71-1.el6.x86_64

安装

下载mysql的最新yum源

1
wget dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm

安装yum源

1
yum localinstall mysql-community-release-el6-5.noarch.rpm

查看源

1
yum repolist all | grep mysql

如果安装顺利,查看结果应该大致如下图所示:

查看yum源

配置源

禁用mysql5.5mysql5.6,启用mysql5.7的安装源

1
2
3
yum-config-manager --disable mysql55-community
yum-config-manager --disable mysql56-community
yum-config-manager --enable mysql57-community-dmr

确认源

1
yum repolist enabled | grep mysql

此时应该只显示mysql5.7的信息,如图:

查看mysql5.7源

执行安装

1
yum install mysql-community-server

注意安装列表显示的版本号,如果不是5.7,请不要输入y,仔细检查前几步的操作过程是否有误。

配置

启动Mysql

1
service mysqld start

设置开机自启动

查看mysql是否开启

1
2
chkconfig --list | grep mysqld
chkconfig mysqld on

登陆并设置密码

由于mysql5.6开始安全机制就开始变了,所以在mysql5.7时,root初始不能免密码登陆哦

方法有二:

  • 使用初始随机密码登陆
    mysql5.6,安装成功后初始化数据库会在root目录下生成一个.mysql_sercet的文件,内含生成的初始随机密码,使用该密码登陆mysql后再使用命令修改密码。
1
set password=password('<新密码>');

但在mysql5.7中却不存在该文件,因为随机密码会生成在日志中,所以直接查看日志以获取随机密码,日志路径一般为/var/log/mysqld.log,使用命令查看随机密码:

1
grep "A temporary password"  /var/log/mysqld.log

显示类似信息:

1
2016-09-05T02:20:59.735447Z 1 [Note] A temporary password is generated for root@localhost: :M3dBN_3V!uk
  • 关闭验证,修改密码

先关闭mysql服务,service mysqld stop,然后启动安全模式,携带–skip-grant-tables参数。

1
mysqld_safe --skip-grant-tables &

确认mysql服务此时启动后,直接输入mysql命令登陆mysql,无需指定用户名和密码。

在mysql命令行执行以下语句更新密码:

1
2
update user set authentication_string=password('<新密码>') where user='root';
flush privileges;

然后退出mysql,结束刚才启动的mysql安全模式服务及mysql进程。

再次以标准方式启动mysql服务,然后以root身份登陆,输入新密码即可。

1
mysql  -uroot -p

在mysql命令行执行以下操作更新密码,否则不能执行任何查询操作。

1
2
alter user 'root'@'localhost' identified by '<你的密码>';
flush privileges;

MysqlServer的安装部署
https://vicasong.github.io/mysql/mysql-install-57/
作者
Vica
发布于
2016年9月5日
许可协议