Linux安装MySQL8.0.29,并使用Navicat连接

目录

资源下载

官网下载

资源筛选

使用Xftp传输到CentOS中

安装操作

检查/tmp临时目录权限(必不可少)

安装前,检查依赖 

开始正式安装

查看MySQL版本

安装后的配置工作 

服务的初始化

启动MySQL,查看状态

查看MySQL服务是否开机自启

登录MySQL

修改密码

设置远程登录

设置MySQL连接

Telnet问题

防火墙问题

Linux下修改配置

再次测试连接


资源下载

附:CentOS7的安装可查看之前的博客:VMware配置安装Linux CentOS7_不会调制解调的猫的博客-CSDN博客_vmware配置centos7

官网下载

官网地址:MySQL :: Download MySQL Community Server

注意选择版本,然后下载即可

Linux安装MySQL8.0.29,并使用Navicat连接_第1张图片

点击此处的Download后,点击下面的一行小字" No thanks... "可以直接下载 

资源筛选

下载下来的文件并不需要全部安装

全部文件如下:(图中的第一个文件夹忽略即可)

Linux安装MySQL8.0.29,并使用Navicat连接_第2张图片

 筛选后需要使用到的文件如下:

Linux安装MySQL8.0.29,并使用Navicat连接_第3张图片

使用Xftp传输到CentOS中

 这里传输到了opt文件夹中 Linux安装MySQL8.0.29,并使用Navicat连接_第4张图片

安装操作

查看一下文件:

此处的containerd忽略即可

Linux安装MySQL8.0.29,并使用Navicat连接_第5张图片

检查/tmp临时目录权限(必不可少)

输入后直接回车即可:

chmod -R 777 /tmp

安装前,检查依赖 

rpm -qa|grep libaio

效果如下: 

rpm -qa|grep net-tools

效果: 

 开始正式安装

在mysql安装文件的所在目录之下 依次执行(一定要注意顺序!顺序不可变!!!)


rpm -ivh mysql-community-common-8.0.29-1.el7.x86_64.rpm

rpm -ivh mysql-community-client-plugins-8.0.29-1.el7.x86_64.rpm

rpm -ivh mysql-community-libs-8.0.29-1.el7.x86_64.rpm
#注意执行到此步骤会报错,先看下文。完成下面的yum步骤后重新从此条代码继续往下执行

rpm -ivh mysql-community-client-8.0.29-1.el7.x86_64.rpm

rpm -ivh mysql-community-icu-data-files-8.0.29-1.el7.x86_64.rpm

rpm -ivh mysql-community-server-8.0.29-1.el7.x86_64.rpm

报错后输入以下内容并回车,中间Y回车:

yum remove mysql-libs

此处 y 回车 ,之后返回到上面继续rpm

Linux安装MySQL8.0.29,并使用Navicat连接_第6张图片

查看MySQL版本

当以上内容全部执行完后,可以检查Mysql的版本,已确认安装是否成功

mysql --version

查询到版本号则代表安装成功,执行如下命令可查看安装过得内容。需要增加 -i 不用去区分大小写,否则搜索不到。 

rpm -qa|grep -i mysql

安装后的配置工作 

服务的初始化

为保证数据库目录与文件的所有者为 mysql 登录用户(若是以root用户登录), 需要执 行下面的命令初始化:
mysqld --initialize --user=mysql
说明: --initialize 选项默认以 安全 模式来初始化,则会为 root 用户生成一个密码并将 该密码标记为过期 ,登录后你需要设置一个新的密码。生成的 临时密码 会往日志中记录一份。
查看默认密码:
cat /var/log/mysqld.log

效果如下:

Linux安装MySQL8.0.29,并使用Navicat连接_第7张图片

root@localhost: 后面就是初始化的密码 (后面需要用到,可提前复制)

启动MySQL,查看状态

不用全部输入,确保服务开启即可

#启动:
systemctl start mysqld.service 

#关闭:
systemctl stop mysqld.service 

#重启:
systemctl restart mysqld.service 

#查看状态:
systemctl status mysqld.service

服务成功启动后的效果:

Linux安装MySQL8.0.29,并使用Navicat连接_第8张图片

 查看MySQL服务是否开机自启

systemctl list-unit-files|grep mysqld.service

右侧显示 enabled 为已经设置开机自启 

若不是  enabled  可以运行如下命令设置自启动:
systemctl enable mysqld.service

登录MySQL

通过 mysql - hlocalhost - P3306 - uroot - p 进行登录,之后输入 初始化密码(在上面复制即可),或输入:
mysql -uroot -p

使用默认密码登录成功后并不能直接开始对数据库的操作,这里需要修改密码

修改密码

因为初始化密码默认是过期的,所以查看数据库会报错,输入以下命令来修改密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码';

注意,这里输入的是你自定义的密码,不是 你的密码 四个字!

设置远程登录

设置MySQL连接

这里我使用的是Navicat,开始设置连接。

输入你的虚拟机IP地址,不清楚的话可以去虚拟机中ifconfig一下,之后是你的用户名和密码

Linux安装MySQL8.0.29,并使用Navicat连接_第9张图片

点击测试连接, 此时会报错 !接着往下走

 Telnet问题

先在cmd中检查一下Telnet,在cmd中输入

telnet ip地址 端口号

#例子如下:
telnet 192.168.150.30 3306

若无法连接则进行以下操作:

Linux安装MySQL8.0.29,并使用Navicat连接_第10张图片

 Linux安装MySQL8.0.29,并使用Navicat连接_第11张图片

 将此处的Telnet客户端勾上,然后点击确定。

此时去Navicat中测试连接,  依旧会报错  继续往下

防火墙问题

有两种方法,选一即可。建议直接方法一,跳过方法二:

方法一:关闭CentOS的防火墙

  • CentOS6:
service iptables stop
  • CentOS7:
systemctl start firewalld.service 

systemctl status firewalld.service 

systemctl stop firewalld.service 

#设置开机启用防火墙 
systemctl enable firewalld.service 

#设置开机禁用防火墙 
systemctl disable firewalld.service

方法二:开放端口

  • 查看开放的端口号
firewall-cmd --list-all
  • 设置开放的端口号
firewall-cmd --add-service=http --permanent
firewall-cmd --add-port=3306/tcp --permanent
  • 重启防火墙
firewall-cmd --reload

使用任意一种方法后, 此时依旧无法连通 ,继续往下

Linux下修改配置

登录Mysql

mysql -uroot -p
#第二行输入你自定义的密码

开始修改配置:

use mysql; 
select Host,User from user;

Linux安装MySQL8.0.29,并使用Navicat连接_第12张图片

 此时可以看到root用户的当前主机配置信息为localhost。

输入以下内容:

update user set host = '%' where user ='root';
Host 设置了 “%” 后便可以允许远程访问。
Linux安装MySQL8.0.29,并使用Navicat连接_第13张图片

 Host修改完成后记得执行flush privileges使配置立即生效:

flush privileges;

一定要输入以上内容!

再次测试连接

走到这一步后,我个人强烈重启一次虚拟机,然后再去重新测试,强烈建议!

到这里大部分已经可以成功连接上,那么整个安装加连接的过程就已经结束。若此时还有报错,  则继续往下 

配置新连接报错:错误号码 2058,分析是 Mysql 密码加密方法变了。

Linuxmysql -u root -p 登录你的 mysql 数据库,然后 执行这条SQL

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的密码';

注意是你自己设置的密码,不是 你的密码 四个字。

然后重新配置在Navicat中的连接,此时就可以成功连接了。

你可能感兴趣的:(Linux,mysql,数据库,linux,centos)