本教程将用两种方式在Centos7.9上安装MySQL:yum安装和编译安装。yum安装简洁方便,编译安装略微复杂,但是可以灵活自定义。
一,yum安装
1.首先关闭防火墙和设置selinux为宽松模式。
setenforce 0 #设置selinux为宽松模式
systemctl stop firewalld #关闭防火墙
2.到MySQL官网找到5.7.27的rpm包。


或者运行:
#更换阿里源
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
#安装wget工具
yum -y install wget
#通过wget工具下载mysql的rpm包
wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
3.安装mysql的yum仓库
#安装包
rpm -ivh mysql80-community-release-el7-3.noarch.rpm
#配置yum源
vim /etc/yum.repos.d/mysql-community.rep
修改如下:

也可以将gpgcheck置为0
若不置为0,在安装时出现的情况请往下看解决方案。
4.安装数据库
yum install -y mysql-community-server
若gpgcheck未置为0,安装步骤会出现

此时的解决方法为
#运行这个语句
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
然后再次安装
yum install -y mysql-community-server
5.启动服务
#启动服务
systemctl start mysqld
#设置开机启动
systemctl enable mysqld
6.查找密码
#查找密码
grep password /var/log/mysqld.log

7.修改密码
#修改密码,要符合修改密码规则:大小写数字和特殊字符
mysqladmin -u root -p'旧密码' password '新密码'
8.通过修改配置文件可以关闭密码复杂策略
#打开文件
vim /etc/my.cnf
#在文件中添加
validate_password=off

9.启动服务,登录mysql
#启动服务
systemctl start mysqld
#登录mysql
mysql -uroot -p'密码'
即可完成安装。
二,编译安装
1.创建mysql用户
#创建mysql用户
useradd -r mysql -M -s /bin/false
#-r ->系统用户
#-M ->不创建家目录
#-s ->设置不能登录
2.从官网下载tar包
#更换阿里源
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
#安装wget工具
yum -y install wget
#通过wget工具下载mysql的rpm包
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.27.tar.gz
3.安装编译工具
#因为mysql是用C写的,所以安装时要下载C的编译软件.
yum -y install ncurses ncurses-devel openssl-devel bison gcc gcc-c++ make
yum -y install cmake
4.创建mysql目录
#创建目录,分别创建data,mysql,log来放置不同的文件信息
mkdir -p /usr/local/{data,mysql,log}
5.解压下载的压缩包
#解压
tar xzvf mysql-boost-5.7.27.tar.gz -C /usr/local/
注:如果安装的MySQL5.7及以上的版本,在编译安装之前需要安装boost,因为高版本mysql需要boots库的安装才可以正常运行。否则会报CMake Error at cmake/boost.cmake:81错误
安装包里面自带boost包
Boost库是为C++语言标准库提供扩展的一些C++程序库
6.编译安装
#解压到mysql目录
#进入到解压出来的文件中
cd /usr/local/mysql-5.7.27/
#编译安装
cmake . \
-DWITH_BOOST=boost/boost_1_59_0/ \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DSYSCONFDIR=/etc \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DINSTALL_MANDIR=/usr/share/man \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_READLINE=1 \
-DWITH_SSL=system \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1
#编译安装
make && make install
若出错,只需删除安装目录中的缓存文件CMakeCache.txt
7.初始化
#进入到刚刚创建的mysql文件中
cd /usr/local/mysql
#基于该文件夹权限
chown -R mysql:mysql .
#初始化
./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
注:初始化完之后,一定要记住提示的最后的密码用于登录或者修改密码
#进入到配置文件
vim /etc/my.cnf
#在配置文件中添加如下内容
[client]
port = 3306
socket = /tmp/mysql.sock
default-character-set = utf8
[mysqld]
port = 3306
user = mysql
basedir = /usr/local/mysql #指定安装目录
datadir = /usr/local/mysql/data #指定数据存放目录
socket = /tmp/mysql.sock
character_set_server = utf8
8.启动mysql
#因为没有配置环境变量,所以只能通过路径进行执行。
cd /usr/local/mysql
./bin/mysqld_safe --user=mysql &
9.添加环境变量
#进入配置文件
vim /etc/profile
#添加如下内容
PATH=$PATH:$HOME/bin:/usr/local/mysql/bin
#加载文件
source /etc/profile
10.修改密码
#修改密码
mysqladmin -u root -p'旧密码' password '新密码'
11.登录mysql
mysql -uroot -p'密码'
即可完成安装。


676

被折叠的 条评论
为什么被折叠?



