服务器虚拟机Linux Centos8.2安装Mysql8(Mysql5.7) 和navicat连接
楼主两个都演示,服务器上安装的是mysql8,虚拟机上的是mysql5.7(都是liunx的Centos,操作差不多)
wget https://dev.mysql.com/get/mysql80-community-release-el7-5.noarch.rpm
或者rz命令上传指定的版本到服务器 这里我使用的是mysql80-community-release-el8-3.noarch.rpm
阿里云ecs用户:
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo
sed -i 's/mirrors.cloud.aliyuncs.com/url_tmp/g' /etc/yum.repos.d/CentOS-Base.repo && sed -i 's/mirrors.aliyun.com/mirrors.cloud.aliyuncs.com/g' /etc/yum.repos.d/CentOS-Base.repo && sed -i 's/url_tmp/mirrors.aliyun.com/g' /etc/yum.repos.d/CentOS-Base.repo
yum clean all && yum makecache
https://developer.aliyun.com/mirror/centos?spm=a2c6h.13651102.0.0.3e221b11K8js6M
测试能否下载neovim
yum install neovim
如上图,表示安装成功-----表示换源成功
卸载neovim
yum remove neovim
上图表示卸载成功
rpm -qa | grep mysql
如图表示有安装包冲突
删除安装包
yum remove 包名
上图表示删除成功
下载安装Mysql8
安装包,后面写的对应的包名
yum localinstall mysql80-community-release-el8-3.noarch.rpm
安装成功后,执行下面的命令
yum -y install mysql-community-server
如果你出现上面的错误
先执行
yum module disable mysql
后执行
yum -y install mysql-community-server
上图开始下载,下载成功表示你的mysql安装完成
1、查看是否有旧的安装包(避免冲突),如果有,要先卸载,方法参考上面.
2、添加官方的yum源,创建并编辑mysql-community.repo文件;使用命令:
vim /etc/yum.repos.d/mysql-community.repo
在打开的文件中添加以下代码,编写mysql5.7的下载源地址(i进入编辑模式,esc退出编辑,:wq!退出并保存)
[mysql57-community]
name=MySQL 5.7 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch/
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
3、安装mysql5.7,使用如下命令:
yum install mysql-community-server -y
首先启动MySQL
systemctl start mysqld.service
查看MySQL运行状态:
systemctl status mysqld.service
不过要想进入MySQL还得先找出此时root用户的密码,通过如下命令可以在日志文件中找出密码:
grep "password" /var/log/mysqld.log
进入数据库:
mysql -uroot -p # 回车后会提示输入密码
成功登录mysql,修改密码。
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码';
默认密码策略要求密码必须是大小写字母数字特殊字母的组合,至少8位
报错注意:可能写的密码比较简单所以会有以下错误
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before
use mysql;
select host, user, authentication_string, plugin from user;
localhost表示只能本地登录,接着我们要把user名了root的用户设置允许远程登录
update user set host = '%' where user = 'root' and host='localhost';
刷新权限
flush privileges;
授权 root 用户的所有权限并设置远程访问
grant all on *.* to 'root'@'%';
再次查看权限
select user,host from user;
root对应的host的值变成%表示修改成功
SHOW VARIABLES LIKE 'validate_password%';
设置密码长度最低为4位
set global validate_password.length=4;
设置validate_password.policy=0
set global validate_password.policy=0;
现在你就可以设置一个简单的密码了
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的密码';
连接名取个有特征的即可:比如阿里云远程数据库
Ip地址:去对应的服务器获取即可
账号一般位root,密码为上面设置的mysql数据库的密码
接着要去服务器设置防火墙(以阿里云为例)
设置好后,点连接测试就可以得到连接成功的消息了,这时候确定即可
如果是虚拟机,而不是服务器,也要开启防火墙
##查看防火墙状态
systemctl status firewalld
##开启防火墙
systemctl start firewalld
##查看已开放端口
firewall-cmd --list-ports
##永久开放3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
##重新加载,使设置生效
firewall-cmd --reload
上面执行后看到sucess即可
虚拟机获取ip地址
ifconfig