CentOS7安装MySQL5.7.11

1. 解压下载的压缩包,会获得以下一些rpm包,也能够直接下载下面的四个rpm包,由于其余的rpm包不是必须的html

 

mysql-community-common-5.7.11-1.el7.i686.rpmnode

 

mysql-community-libs-5.7.11-1.el7.i686.rpmmysql

 

mysql-community-client-5.7.11-1.el7.i686.rpmlinux

 

mysql-community-server-5.7.11-1.el7.i686.rpm

2.卸载MariaDBsql

若是直接点击rpm包安装会获得错误提示。由于CentOS的默认数据库已经再也不是MySQL了,而是MariaDB,为何呢?数据库

MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL受权许可。开发这个分支的缘由之一是:甲骨文公司收购了 MySQL后,有将MySQL闭源的潜在风险,所以社区采用分支的方式来避开这个风险。MariaDB的目的是彻底兼容MySQL,包括API和命令行, 使之能轻松成为MySQL的代替品。centos

查看当前系统安装的mariadb包tcp

[root@localhost 下载]# rpm -qa | grep mariadb

卸载全部的mariadb包ui

[root@localhost 下载]# rpm -e mariadb-libs

会报依赖检测失败的错误spa

执行强制卸载

[root@localhost 桌面]# rpm -e --nodeps mariadb-libs

3. 安装MySQL

[root@localhost 桌面]# rpm -ivh mysql-community-common-5.7.11-1.el7.i686.rpm
[root@localhost 桌面]# rpm -ivh mysql-community-libs-5.7.11-1.el7.i686.rpm
[root@localhost 桌面]# rpm -ivh mysql-community-client-5.7.11-1.el7.i686.rpm
[root@localhost 桌面]# rpm -ivh mysql-community-server-5.7.11-1.el7.i686.rpm

提示:安装时可能会遇到依赖检测失败的状况以下

安装MySQL依赖便可

[root@localhost 桌面]# yum install libaio.so.1

4. 启动MySQL

[root@localhost 桌面]# systemctl start mysqld.service

若是报错(反正我没报错)ERROR!The server quit without updating PID file

是由于:selinux,若是是centos系统,默认会开启selinux。解决方法是关闭它,打开/etc/selinux/config,把SELINUX=enforcing改成SELINUX=disabled后存盘退出重启机器。

重启MySQL

[root@localhost 桌面]# systemctl restart mysqld.service

查看MySQL状态

[root@localhost 桌面]# systemctl status mysqld.service

 

5.使用root用户登录

5.1 MySQL 5.7 在初始安装后(CentOS7 操做系统)会生成随机初始密码,并在 /var/log/mysqld.log 中有记录,能够经过 more 命令查看,找 password 关键字

而后使用 `mysql -u root -p` 命令登陆,并使用 `set password=password('你的密码');` 修改密码。

> 若是不修改密码,不能进行其余操做

> MySQL 的 validate_password 插件是默认安装的。这要求 MySQL 密码至少包含一个大写字母、一个小写字母、一个数字和一个特殊字符,而且总密码长度至少为8个字符。

 

5.2 也能够跳过密码检测进入MySQL后再修改root的密码

网上看到用mysqld_safe命令,可是我安装的MySQL5.7.11并无找到这个命令,到官网查到的下面结果

也就是说mysqld_safe从MySQL5.7.6已经没有安装了,那就不能使用mysqld_safe了。

解决的办法是:经过编辑/etc/my.cnf文件在[mysqld]下面加上skip-grant-tables=1,而后重启MySQL服务。

以root身份登陆MySQL

[root@localhost 桌面]# mysql -u root

进入mysql数据库

mysql> use mysql;

修改root的密码为root

mysql> update user set authentication_string = password('root'),password_expired='N',password_last_changed=now() where user='root';

退出MySQL,再次编辑/etc/my.cnf文件,把刚才添加的skip-grant-tables=1删掉,而后再重启MySQL服务便可。

6. 开放3306端口

若是想要其余主机链接你的Mysql就须要开放3306端口。

[root@localhost 桌面]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
[root@localhost 桌面]# firewall-cmd --reload
相关文章
相关标签/搜索