一、前期准备工作
准备一台服务器,操作系统为 CentOS 7.9.2009
二、下载MySQL 8.0.30
从 mysql 官网下载安装包
- 打开官网 mysql官网,并点击 DOWNLOADS
- 下滑界面并点击 MySQL Community (GPL) Downloads
- 点击 MySQL Community Server
- 选择下载的版本
Select Operating System 选择 Red Hat Enterprise Linux / Oracle Linux
Select OS Version 选择 Red Hat Enterprise Linux 7 / Oracle Linux 7 (x86, 64-bit)
然后点击下面的第一个 (mysql-8.0.30-1.el7.x86_64.rpm-bundle.tar) 的 Download 按钮,注意不要选错了。
注:上面的版本只是根据我自己的情况选择的,如果您的操作系统版本和处理器架构和我不一样,请根据您自己的实际情况选择。 - 开始下载
最后点击 No thanks, just start my download. 就可以开始下载了
三、上传安装包到服务器
讲安装包上上传到服务器的方式有多种
1、通过 wget 直接下载到服务器
2、lrzsz 工具
3、FTP工具,如 xftp
此部分不详细解释,相信您一定可以自己解决。
四、开始安装
- 上传到服务器
[root@localhost mysql]# ll
total 839312
-rw-r--r--. 1 root root 859453440 Aug 25 02:47 mysql-8.0.30-1.el7.x86_64.rpm-bundle.tar
- 解压
tar -xvf mysql-8.0.30-1.el7.x86_64.rpm-bundle.tar
- 解压后
-rw-r--r--. 1 7155 31415 14709160 Jul 7 04:00 mysql-community-client-8.0.30-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 2632376 Jul 7 04:00 mysql-community-client-plugins-8.0.30-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 660264 Jul 7 04:00 mysql-community-common-8.0.30-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 481580308 Jul 7 04:01 mysql-community-debuginfo-8.0.30-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 1958588 Jul 7 04:01 mysql-community-devel-8.0.30-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 4217604 Jul 7 04:01 mysql-community-embedded-compat-8.0.30-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 2218720 Jul 7 04:01 mysql-community-icu-data-files-8.0.30-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 1582228 Jul 7 04:01 mysql-community-libs-8.0.30-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 685808 Jul 7 04:02 mysql-community-libs-compat-8.0.30-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 56195524 Jul 7 04:02 mysql-community-server-8.0.30-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 21350292 Jul 7 04:02 mysql-community-server-debug-8.0.30-1.el7.x86_64.rpm
-rw-r--r--. 1 7155 31415 271649024 Jul 7 04:04 mysql-community-test-8.0.30-1.el7.x86_64.rpm
- 卸载 mariadb
CentOS存在一个包会和MySQL冲突,所以需要将其卸载
查询是否存在 mariadb 的包
[root@localhost mysql]# rpm -qa | grep mariadb
mariadb-libs-5.5.68-1.el7.x86_64
卸载
rpm -e --nodeps mariadb-libs
卸载后再次查找就没有了
- 开始安装
依次执行下列命令,因为包与包之间存在依赖关系,所以需要安装顺序安装。
注意后面的文件名是您的压缩包解压后对应的文件名。
rpm -ivh mysql-community-common-8.0.30-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.0.30-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.30-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.0.30-1.el7.x86_64.rpm
rpm -ivh mysql-community-icu-data-files-8.0.30-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.0.30-1.el7.x86_64.rpm
中间可能会遇到报错,安装相应依赖即可
yum install -y perl-Module-Install.noarch
- 安装完成后初始化
初始化
mysqld --initialize --console
修改目录权限
chown -R mysql:mysql /var/lib/mysql
启动mysql
systemctl start mysqld
查看mysql状态
systemctl status mysqld
- 更改root密码
初始化时会给我们分配一个临时密码
查看临时密码(localhost:后面的就是密码)
[root@localhost mysql]# cat /var/log/mysqld.log | grep localhost
2022-08-25T08:16:05.564124Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: =rl9%Qk.kvTC
使用临时密码登录(-p后面替换为您自己的临时密码)
mysql -uroot -p=rl9%Qk.kvTC
更改密码
alter user 'root'@'localhost' identified by '123456';
以后您就可以用您自己设置的密码登录mysql了。
五、使用Navicat远程连接
如果您使用的虚拟机,请关闭防火墙或开放 3306 端口。
如果您使用的是云服务器(如阿里云等),请到后台开放 3306 端口。
这部分操作就不展示了,相信您一定可以通过其他博主的文章解决。
- 登录mysql
- 选择使用的数据库
mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
查看root当前的状态(可以看到root为localhost,只允许本地登录)
mysql> select user,host from user;
+------------------+-----------+
| user | host |
+------------------+-----------+
| mysql.infoschema | localhost |
| mysql.session | localhost |
| mysql.sys | localhost |
| root | localhost |
+------------------+-----------+
4 rows in set (0.00 sec)
更改root的访问权限;
mysql> update user set host='%' where user='root';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0
再次查看
mysql> select user,host from user;
+------------------+-----------+
| user | host |
+------------------+-----------+
| root | % |
| mysql.infoschema | localhost |
| mysql.session | localhost |
| mysql.sys | localhost |
+------------------+-----------+
4 rows in set (0.00 sec)
最后还需要刷新一下
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)
再去 Navicat 连接就提示连接成功。
本人水平有限,如果有什么错误和不足之处,望指正,不胜感激。
Created By HuKang
2022年8月25日16:41:59
Guiyang, Guizhou
本文含有隐藏内容,请 开通VIP 后查看