下载mysql5.7的rpm安装包
下载地址 https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.25-1.el7.x86_64.rpm-bundle.tar
查看linux上是否已经安装了mysql,有则卸载。
一般centos 7默认安装了mariadb,这里把它卸载。
查看:rpm -qa|grep mariadb
mariadb-libs-5.5.60-1.el7_5.x86_64
卸载:rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64
安装mysql5.7所需要的依赖
yum install libaio
yum install perl
yum install net-tools
解压mysql5.7安装包
tar -xvf mysql-5.7.25-1.el7.x86_64.rpm-bundle.tar
解压完后会有很多rpm文件,这些就是我们需要安装的。
-rw-r--r--. 1 7155 31415 25402568 Dec 24 2018 mysql-community-client-5.7.25-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 280904 Dec 24 2018 mysql-community-common-5.7.25-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 3839640 Dec 24 2018 mysql-community-devel-5.7.25-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 46782224 Dec 24 2018 mysql-community-embedded-5.7.25-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 24079656 Dec 24 2018 mysql-community-embedded-compat-5.7.25-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 130149460 Dec 24 2018 mysql-community-embedded-devel-5.7.25-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 2271668 Dec 24 2018 mysql-community-libs-5.7.25-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 2116628 Dec 24 2018 mysql-community-libs-compat-5.7.25-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 173130520 Dec 24 2018 mysql-community-server-5.7.25-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 119947432 Dec 24 2018 mysql-community-test-5.7.25-1.el7.x86_64.rpm
安装mysql5.7
rpm -ivh mysql-community-common-5.7.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-5.7.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.25-1.el7.x86_64.rpm
查看mysql5.7的状态,没有启动则把mysql启动
查看mysql启动状态
service mysqld status
出现下面这个dead就是没有启动,新装的第一次是没有启动的。
Redirecting to /bin/systemctl status mysqld.service
● mysqld.service - MySQL Server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
Active: inactive (dead)
Docs: man:mysqld(8)
http://dev.mysql.com/doc/refman/en/using-systemd.html
启动mysql
service mysqld start
再次查看mysql启动状态
service mysqld status
active(running) 代表启动成功
Redirecting to /bin/systemctl status mysqld.service
● mysqld.service - MySQL Server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
Active: active (running) since Wed 2020-12-02 05:45:08 CST; 52s ago
Docs: man:mysqld(8)
http://dev.mysql.com/doc/refman/en/using-systemd.html
Process: 7395 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited, status=0/SUCCESS)
Process: 7321 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
Main PID: 7398 (mysqld)
CGroup: /system.slice/mysqld.service
└─7398 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid
修改密码
查看临时密码:
grep password /var/log/mysqld.log
2020-12-01T21:45:05.783392Z 1 [Note] A temporary password is generated for root@localhost: ***********
用临时密码登录mysql
mysql -uroot –p修改成新的密码
mysql> set password = password("替换成新密码");
开启远程连接,允许远程连接数据库
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '新密码' WITH GRANT OPTION;
配置mysql的配置文件my.cnf
打开配置文件my.cnf
vi /etc/my.cnf
在[mysqld]下面配置几行
lower_case_table_names=1 #配置表名不区分大小写 1:不区分大小写 0:区分大小写
character-set-server=utf8 #设置为默认编码为utf8
init_connect='SET NAMES utf8'
max_connections=1024 #设置最大连接数
重启mysql 重启配置才能生效
service mysqld restart
防火墙开启端口
到这其实mysql已经安装和配置好,但是centos 7 默认开了防火墙,外面还是访问不到mysql的,所以还要开放mysql端口3306
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload
至此,centos 7 下安装mysql5.7完毕.