下载下来是 mysql80-community-release-el7-6.noarch.rpm 文件(不同版本下载后名字可能不同,无所谓)
# 安装wget命令 yum -y install wget # 然后进入你想把文件保存到的目录(我选的 /opt 目录),下面不特意写 cd 命令的,就是不用在意执行路径 cd /opt # 下载咱们要的 .rpm 文件 wget -P /opt https://dev.mysql.com/get/mysql80-community-release-el7-6.noarch.rpm # 大写 -P 是指定文件下载到哪个目录,我是下载到 /opt 目录了
将下载好的 .rpm 文件 上传到Linux服务器,可以借助工具,如MobaXterm来上传,或通过下面的cmd命令(注意是在本地主机的cmd执行命令)
注意:要记住文件的保存路径(我是保存在了 /opt 目录下)
scp 本地文件路径 服务器用户名@远程机器IP:/服务器目录/给文件取个名(或直接复制原文件名) # 实例: scp E:\Edge_Download\mysql80***.rpm(文件名) root@172.128.1.10:/opt/mysql80***.rpm(文件名) # 回车之后输入你的Linux用户密码,就上传成功了
接下来就进入Linux进行操作
注意:我们接下来要使用Linux的 rpm 命令,某些Linux版本里可能没有,不要慌,咱们可以让它有:
yum install rpm
(1)卸载Linux自带的mariadb
# 咱们这里先不管语句的具体意思,后面再学,先直接复制粘贴用呗 rpm -qa | grep mariadb # 执行上一条语句后,会显示出类似于 mariadb-libs-5.5.68-1.el7.x86_64 的东东 # 让我们干掉它:(语句中间的 东东 记得换成上一步查出来的 东东 ) rpm -e mariadb-libs-5.5.68-1.el7.x86_64 --nodeps
(2)安装所需依赖:一般是这一步,但是以防万一缺少依赖,就再安装一遍,又不要钱
yum install libaio -y yum install net-tools -y
(3)接下来就要用到咱们在 1. 里下载的文件了;依旧是Linux命令
cd /opt rpm -ivh mysql80-community-release-el7-6.noarch.rpm
完成第 3. 步后,就要去修改MySQL的国内镜像源了,我选择清华的MySQL镜像
咱们先来获取镜像的链接留用:
(1)进入 https://mirrors.tuna.tsinghua.edu.cn 进入后页面显示如下:
咱们来记住这个链接,下面要用 https://mirrors.tuna.tsinghua.edu.cn/mysql/yum/mysql-5.7-community-el7-x86_64
(2)又到了Linux命令时间
# 进入Linux配置文件所在的目录 cd /etc/yum.repos.d # 以防万一,咱们来下载一个 vim编辑器(比自带的vi编辑器好看一点,操作跟vi一样,所以不下载也没影响) yum -y install vim # 修改配置文件目录下的 mysql-community.repo 文件 vim mysql-community.repo
然后应该是跟下面差不多的界面(看看就行):
(直接删掉文件里的所有内容,复制下面的配置文件内容就行,需要改的也就两个地方,一是咱们的链接,二是很显然的版本号 5.7 )
配置文件内容:
# Enable to use MySQL 5.7 [mysql57-community] name=MySQL 5.7 Community Server baseurl=https://mirrors.tuna.tsinghua.edu.cn/mysql/yum/mysql-5.7-community-el7-x86_64 enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2022 file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql [mysql-connectors-community] name=MySQL Connectors Community baseurl=https://mirrors.tuna.tsinghua.edu.cn/mysql/yum/mysql-5.7-community-el7-x86_64 enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2022 file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql [mysql-tools-community] name=MySQL Tools Community baseurl=https://mirrors.tuna.tsinghua.edu.cn/mysql/yum/mysql-5.7-community-el7-x86_64 enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2022 file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql [mysql-tools-preview] name=MySQL Tools Preview baseurl=https://mirrors.tuna.tsinghua.edu.cn/mysql/yum/mysql-5.7-community-el7-x86_64/ enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2022 file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
(1)安装MySQL吧
yum install mysql-community-server # 就这一条命令,然后等它安装结束就成,但也可能会出现一些错误,比如下面:
(2)可能会遇到的报错:"Couldn‘t open file /etc/pki/rpm-gpg/RPM-GPG-KEY-mysql-2022"
# 解决办法: rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022 # 然后就可以再次运行上面(1)的安装语句了,至于出现什么警告啥的,不用管,只要能顺畅的Seccessful就没问题了
(3)查看是否安装成功
rpm -qa | grep mysql # 出现下面的界面就可以了
(4)因为MySQL 5.6 以上的版本都是默认有初始密码的,咱们得先去找到默认密码
# 启动MySQL(注意 mysqld 不是写错了,它就是那样,奇奇怪怪) systemctl start mysqld # 找初始密码 cat /var/log/mysqld.log | grep "A temporary passwor" # 应该会出现以下内容,里边就有密码:
(5)现在就可以登录MySQL,然后修改自己的root密码了(依旧是在Linux里)
mysql -u root -p # 然后输入初始密码,登陆成功应该是下面的界面
(6)然后在 mysql > 里依次输入以下命令(注意分号' ; '结尾)
(MySQL 默认的密码规则非常复杂,是真记不住)
(为了咱们设置密码更灵活,就把下面三个都输入一遍吧)
# 修改密码复杂度校验规则 set global validate_password_policy=0; # 修改密码长度限制 set global validate_password_length=1; # 修改密码为123456 (自己玩儿可以设这个密码,但别真的这么干) alter user 'root'@'localhost' identified by '123456'; # 授权远程连接(这儿的654321是远程连接数据库时使用的密码) grant all privileges on *.* to 'root'@'%' identified by '654321' with grant option; # grant 授权的动作,也是mysql中的命令,sql语句 # all privileges 表示所有的权限 # *.* 指定所有的数据库以及库里的表,点的前面表示库,点的后面表示表 # to 表示给谁权限 # @"%” 表示允许使用root用户的远程机器,从任意的地方来访问,%表示任意IP(也就是远程机器的IP地址) # identified by 定义远程认证的密码 # 刷新权限信息 flush privileges; # 退出MySQL exit;
# 退出之后呢就进入了Linux界面 # 重启MySQL systemctl restart mysqld # 再登陆的话,密码就是咱们自己的密码了
方法一:在主机电脑的 cmd 运行
mysql -h LinuxIP地址 -P 3306 -u root -p #-P 大写P表示的是连接服务器端口号 # 回车后,输入MySQL 密码 # 远程登陆的要素:协议、地址(IP)、端口、用户、密码 (Linux远程登陆也是这样的要素)
方法二:用Navicat等图形化软件……
后记:如果所有都配置好了,但是远程连接不通,那可能是Linux防火墙的问题
# 方法一:让防火墙将 MySQL 端口对外开放(3306是 MySQL 的默认端口号) firewall-cmd --zone=public --add-port=3306/tcp --permanent # 方法二:直接关掉防火墙(自己玩儿可以) systemctl stop firewalld # 关掉后再禁止它开机启动 systemctl disable firewalld # 想恢复防火墙 systemctl enable firewalld systemctl start firewalld
有什么疏漏请您多担待,欢迎您的斧正和批评。