CentOS 7下载安装MySQL 5.7以及连接虚拟机CentOS 7数据库教程

原创
2020/11/12 15:47
阅读数 328

本教程会运用到Xshell 6和Xftp 6,其实一般主要用Xshell 6即可,但是由于写这个教程的时候,我的Xshell 6还未激活,上传不了文件,且Xftp 6相对于字符界面的Xshell 6更贴近已经习惯了Windows系统的我们,所以使用Xftp 6,当然牛逼一点的,直接使用虚拟机也是可以的,可以不借助这些辅助工具。

1. 从网站https://dev.mysql.com/downloads/mysql/下载安装MySQL 5.7的Linux安装包

(1)点击右侧的"Looking for previous GA versions?",查看以前的版本

(2)Select Version:选择自己想要的MySQL5.7版本,这里我们选择最新的5.7.32版本

Select Operating System:选择Red Hat(红帽),因为CentOS 是基于Red Hat(红帽)的

Select OS Version:选择Linux 7 64位,因为我们的CentOS 7对应的就是Linux 7

当然你也可以在Select Operating System中选择Linux - Generic(Linux通用),Select OS Version选择All

然后选择"RPM Bundle",点击 "Download"进入下载页面

(3)点击"No thanks, just start my download.",进行免登录下载

2. 下载好后,双击打开VMware Workstation Pro,选中要使用的虚拟机CentOS 7,点击"开启此虚拟机",输入root用户和对应的密码

3. 下载完成之后, 打开Xshell 6和Xftp 6,输入虚拟机的连接信息进行连接,具体的连接过程请看我以前写的“Xshell 6或者Xftp 6连接CentOS 7虚拟机”(传送门:https://my.oschina.net/u/3986411/blog/4711296

4.  通过如下命令查看mariadb的安装包

rpm -qa | grep mariadb

5.  通过如下命令卸载mariadb

rpm -e mariadb-libs-5.5.65-1.el7.x86_64 --nodeps

注意,mariadb的全名要写对,写成和第4步查看mariadb的安装包时出现的名字一样

问题:为什么卸载mariadb?

答案:CentOS 7已经不支持MySQL(由于收费的原因),所以系统就预置了mariadb,而安装mysql的话会和mariadb的文件冲突,所以需要先卸载掉mariadb,才能安装MySQL。

6.  通过如下命令再次查看mariadb的安装包 ,检查是否卸载成功

rpm -qa | grep mariadb

出现如上图所示情况,代表mariadb已经卸载成功了,可以开始进行下一步

7.  通过如下命令进入根目录下的usr目录下的local目录,该目录是专门用来存放一些本地的共享资源的

cd /usr/local/

8.  通过如下命令来查看当前目录下的目录结构,注意这是两个小写的L,不要写错了

ll

9.  通过如下命令在当前目录下创建一个名为mysql的目录

mkdir mysql

10.  再通过如下命令查看当前目录下的目录结构,在查出的结果中,我们可以看到我们刚刚创建的mysql目录

ll

11.  通过如下命令进入mysql目录

cd mysql

12. 然后我们把之前下载的mysql安装包上传到mysql目录,这里我们有两种方法:

方法一:通过Xshell 6上传

点击菜单栏的"窗口"-->"传输新建文件(F)",通过ftp协议来把刚下载好的mysql安装包传输到CentOS 7系统中

方法二:通过Xftp 6上传

我们可以直接在右侧目录那里输入/usr/local/mysql,直接跳转到我们要上传的目录下,然后通过Xftp 6上传 把mysql安装包直接拖拽到Xftp 6的右侧(可以在Xftp 6左侧找,也可以直接打开Windows存放安装包的文件夹),文件就可以传输到CentOS 7系统中

由于我Xshell 6还未激活,Xshell 6上传不了,所以我用的是第二种方法上传

13. 上传完后, 我们通过在Xshell 6输入如下命令来查看mysql目录

ll

14.  通过如下命令解压mysql的安装包

tar -xvf mysql-5.7.32-1.el7.x86_64.rpm-bundle.tar

15.  通过如下命令查看mysql的安装包 ,有可能一开始没有显示后面安装完才显示,或显示不全,不过没关系,你只要记住要安装如下common、libs、client、server这四个就行,记不清全名也没关系,输入到"5.7-"就按"Tab"键就会自动补全文件名

rpm -qa | grep mysql

16. 通过如下命令来安装common

rpm -ivh mysql-community-common-5.7.32-1.el7.x86_64.rpm --nodeps --force

17.  通过如下命令来安装libs

rpm -ivh mysql-community-libs-5.7.32-1.el7.x86_64.rpm --nodeps --force

18.  通过如下命令来安装client

rpm -ivh mysql-community-client-5.7.32-1.el7.x86_64.rpm --nodeps --force

19.  通过如下命令来安装server

rpm -ivh mysql-community-server-5.7.32-1.el7.x86_64.rpm --nodeps --force


20.  通过以下命令,对mysql数据库进行初始化和相关配置

mysqld --initialize;
chown mysql:mysql /var/lib/mysql -R;
systemctl start mysqld.service;
systemctl enable mysqld;

21.  通过如下命令来查看数据库的密码

cat /var/log/mysqld.log | grep password

如上图所示,红色方框里面的就是我们的数据库密码

22.  通过如下命令来进入数据库的登录界面,然后输入上一步得到的数据库密码进行登录

mysql -u root -p

注意:这里粘贴密码后密码没有显示,不是出错,且要用点击鼠标右键粘贴来粘贴密码,Ctrl+C是不会粘贴密码的哦

23.  通过如下命令来修改密码,这里我们设置为123,你也可以修改为自己需要的密码,这里我们为了简单易记忆,就设置为123

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123';
flush privileges;

24.  通过输入如下命令命令退出MySQL,然后通过新密码重新登录,验证一下密码修改是否真的成功了!

exit;

25.  通过以下命令,进行远程访问的授权

create user 'root'@'%' identified with mysql_native_password by '123';
grant all privileges on *.* to 'root'@'%' with grant option;
flush privileges;

26.  通过如下命令来退出MySQL

exit;

27.  通过如下命令来关闭firewall(防火墙)

systemctl stop firewalld.service;
systemctl disable firewalld.service;
systemctl mask firewalld.service;

28.  通过如下命令来安装iptables防火墙

yum -y install iptables-services

29.  通过如下命令来重新启动设置防火墙

systemctl enable iptables;
systemctl start iptables;

30.  通过如下命令来编辑防火墙,添加端口

vim /etc/sysconfig/iptables

注意:之所以这么复杂的通过编辑防火墙,添加端口,而不是修改数据库的配置文件my.cnf(CentOS 7修改的是my.cnf,而windows下修改的是my.ini),是因为我们这里是开放端口,而修改my.cnf是为了修改数据库的默认端口3306

31. 按下"i"键进入插入模式。

如果要通过同时按W+C两个键进入插入模式,要先把游标移到最下面的COMMIT的右边,因为按下这两个键会去掉所在位置的字符

32.  在相关位置写入如下内容:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8090 -j ACCEPT

33.  点击"ESC"键退出插入模式 ,然后输入如下命令再按回车,保存并退出

:wq!

34.  通过如下命令来重启防火墙使配置生效

systemctl restart iptables.service

35.  通过如下命令来设置防火墙开机启动

systemctl enable iptables.service

36. 双击打开sqlyog,输入虚拟机的连接信息,然后点击"连接"进行连接

37. 如果出现如下图所示错误

检查授权给用户登录的密码对不对(上面第25步设置的,不一定是你虚拟机数据库的登录密码或者登录虚拟机root账号的密码),忘记了就再执行如下命令进行重置,其中123就是授权账号访问密码

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123' WITH GRANT OPTION;
flush privileges;

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部