参考链接
https://zhuanlan.zhihu.com/p/34719781

一、下载安装

  1. 禁用SELinux服务

如果不禁用的话,后面启动MySQL服务会被阻止。另外,千万不要卸载CentOS自带的mariadb数据库,不要卸载!安装过程会自动替换mariadb,自己卸载会产生一些问题。

用root登陆shell:su
//下文所有输入的命令都在root用户下输入

gedit /etc/selinux/config

将其中的SELINUX=设置为disabled,保存退出,重启电脑使之生效。

  1. 下载tar压缩包并解压出RPM安装包

Download MySQL Community Server地址:

Download MySQL Community Server

dev.mysql.com

解压下载的mysql-5.7.25-1.el7.x86_64.rpm-bundle.tar包,解压后(tar -xvf )你会看到有12个rpm包,这些包的作用如下表:

mysql-community-client(*客户端程序和工具)
mysql-community-server(*服务器程序和工具)
mysql-community-libs(*LIB库)
mysql-community-libs-compat(*LIB共享兼容库)
mysql-community-common(*公共文件)
mysql-community-devel(开发MySQL必备的头文件和库)
mysql-community-embedded(嵌入式库)
mysql-community-embedded-compat(嵌入式共享兼容库)
mysql-community-embedded-dev(嵌入式开发库)
mysql-community-minimal-debuginfo(最小安装调式信息库)
mysql-community-server-minimal(最小安装服务器程序和工具)
mysql-community-test(测试套件)
上述中5个带*号的为必安装项。因为mysql-community-server和mysql-community-server-minimal有重叠的部分,安装其中一个即可,所以这里删除mysql-community-server-minimal最小安装这个包,我们完全安装server程序。如果不这样的话后面安装会报冲突错误。

  1. yum命令安装所需包

yum install mysql-community-{server,client,common,libs}-*

安装结束后会在Linux中的各种目录生成必要的文件,如下表:

至此,CentOS 7 安装MySQL 5.7.25结束,像什么添加mysql用户及mysql用户组等操作都是采用.tar.gz这种安装方式才需要设置的,而这里RPM安装包自动把这些都设置好了。

二、安装完毕后的设置

  1. 设置Data数据位置

默认Data数据存储在/var/lib/mysql,由于我这里/var/目录存储空间小,所以我想指定/home/为我的数据存放点。如果你们觉得默认位置就可以了,这一步骤忽略。

先删除默认的路径:

rm -rf /var/lib/mysql
新建我要存放的目录:

mkdir /home/mysql
修改my.cnf配置文件

gedit /etc/my/cnf

开头加入user=mysql
将datadir这项修改为datadir=/home/mysql
将socket这项修改为socket=/home/mysql/mysql.sock
如果作为客户端启动不了,添加两行:

[mysql]
socket=/home/mysql/mysql.sock
用mysqld执行mysql初始化数据目录:

mysqld --defaults-file=/etc/my.cnf --initialize-insecure --user=mysql
这时你会看到设定的目录下生成了一些必要的文件

官方建议从MySQL 5.7.6开始,不要再用mysql_install_db命令初始化数据目录了。顺便把配置文件my.cnf也传入参数。

  1. 启动MySQL服务

systemctl start mysqld
可以用service mysqld status查看是否启动成功:

启动成功!

  1. 给root添加密码

进入mysql,给root分配密码:

mysql -uroot --skip-password
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
这样我们就设置好密码了(123456,以后可以用下列命令登陆mysql了:

mysql -uroot -p123456

标签: none

添加新评论