虚拟机的存在不仅让服务器更加稳定,而且还大大提高了数据库的稳定性,所以现在有很多开发人员将代码放到虚拟机上进行开发,那么我们应该如何在虚拟机上安装数据库呢?
一、启动网卡
1、查看虚拟机ip。
命令:ip addr
2、在这里我们需要开启名称为 enp0s3 的网卡,默认是关闭的。开启网卡的方式是修改文件属性值,命令:vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
3、键盘输入 i 进入编辑模式,将ONBOOT的属性值改为yes;键盘按下 ESC 退出编辑模式,键盘按下 :wq保存退出文件。
4、再次输入命令 ip addr 既可以查看到ip地址了。
二、MySQL5.7的安装
卸载依赖组件
1、卸载postfix
a.首先查看postfix全文件名称
命令:rpm -qa | grep postfix
b.卸载该名称的文件
命令:rpm -ev postfix-2.10.1-6.el7.x86_64
2、卸载mariadb-libs
a.首先查看mariadb-libs的全文件名称
命令:rpm -qa | grep mariadb-libs
b. 卸载该名称的文件
命令:rpm -ev mariadb-libs-5.5.56-2.el7.x86_64
添加依赖组件
1、添加curse组件
命令:yum -y install ncurses-devel
2、添加c++组件
命令:yum install gcc-c++
3、添加net-tools组件
命令:yum install net-tools
4、添加perl组件
命令:yum install cpan
命令:yum install perl
由于我的机器已经安装了最新的版本所以出现了以上信息,但是无所谓,说明机器上已经存在了该组件
5、添加libaio组件
下载地址:libaio组件
下载后用VMware16.1.1将文件上传至虚拟机,再执行以下命令。
安装命令:rpm -ivh libaio-0.3.107-10.el6.x86_64.rpm
由于我的机器上安装了更新的版本,所以出现了以上信息,但是无所谓,说明机器上已经存在了该组件
安装MySQL
MySQL提供了4个文件供用户安装,用户需要全部安装,但是这4个文件需要按照固定的顺序安装,顺序如下:
1、rpm -ivh mysql-community-common-5.7.20-1.el7.x.86_64.rpm
2、rpm -ivh mysql-community-libs-5.7.20-1.el7.x.86_64.rpm
3、rpm -ivh mysql-community-client-5.7.20-1.el7.x.86_64.rpm
4、rpm -ivh mysql-community-server-5.7.20-1.el7.x.86_64.rpm
如下图:
至此,在CentOS 7 下的MySQL5.7就安装完成了
如安装client时出现libncurses依赖错误,我们需要通过yum下载依赖,命令: yum install libncurses
三、启动数据库(此操作可以在虚拟机上进行,我用的是VMware16.1.1)
1、查看是否启动(状态)
命令:service mysqld status
2、启动MySQL
命令:service mysqld start
3、停止MySQL
命令:service mysqld stop
四、初始化MySQL密码
1、MySQL5.7在安装成功后会给root账号分配一个初始密码,我们可以在日志文件中查找到这个初始密码,命令:grep password /var/log/mysqld.log
2、接下来用这个密码登录数据库,命令:mysql -uroot -p
3、成功登录后,可以通过password()函数来修改密码,这里要求密码必须包含大写字母+小写字母+符号,命令:set password = password("MySQL2018!.");
mysql8以后修改密码命令:
mysql> alter user 'root'@'localhost' identified by 'Aa123456.';
4、修改完成后用 quit; 命令退出登录,此时密码就已经修改成功了。
五、授权root用户远程连接
1、授权root用户远程连接
切换到mysql数据库,修改user表数据,命令:use mysql Database changed;
授权命令:GRANT ALL PRIVILEGES ON *.* TO'root'@'%' IDENTIFIED BY 'MySQL2018!.' WITH GRANT OPTION;标红的地方是自己的密码,千万别写错了。
此时就已经完成了授权的工作,可以使用 quit; 命令退出mysql操作,进入linux命令行;
虽然远程连接已经授权,但是MySQL的3306端口还没有设置放行,我们需要给Linux防火墙设置3306端口放行
2、设置防火墙放行MySQL的3306端口,开放端口命令:firewall-cmd --zone=public --add-port=3306/tcp --permanent
命令含义:
--zone #作用域
--add-port=3306/tcp #添加端口,格式为:端口/通信协议
--permanent #永久生效,没有此参数重启后失效
3、接下来重启防火墙,命令:firewall-cmd --reload
至此,MySQL的远程连接授权就全部结束了,我们可以在本地通过Navicat for MySQL软件来远程访问Linux下的MySQL数据库
六、通过Navicat for MySQL客户端远程访问MySQL数据库。
1、输入IP地址、用户名、密码后,点击连接测试 按钮,发现可以成功远程连接到MySQL。
2、连接成功后如下。
如此,我们便实现了如何在虚拟机上安装MySQL数据库,快行动起来吧。