前言
在学习springcloud的过程中,需要在虚拟机上做一个nacos集群,因此需要安装mysql数据库,为便于操作,想使用主机上的sqlyog进行管理。调试过程中出现许多问题,特此记录,笔者只是整理了一下过程,有许多命令具体干嘛的我也不懂。
1.安装数据库
sudo apt update #更新系统软件
sudo apt install mysql-server #安装mysql,默认装最新的,后面的操作都是根据8.0以上进行的
安装完毕后查看是否安装完成
mysql --version #查看版本
service mysql status #查看mysql服务状态
有个绿点就是在运行中,白点就是服务没启动
service mysql start # mysql,启动!
service mysql stop # 停止
service mysql restart #重启
2.数据库准备
装完数据库发现,全程没让我设置密码呀,这可咋登录数据库呢?
原来是数据库安装时为我们生成了一个默认用户和密码,需要我们自己修改。
sudo cat /etc/mysql/debian.cnf #查看一下生成的用户密码
使用第一个user和password进行登录即可
mysql -u 用户名 -p #使用密码登录
输入密码
成功进入mysql,接下来就是修改root用户密码了
#切换数据库,这个数据库名叫mysql,里面存了用户相关数据
use mysql
#将authentication_string字段置空
update user set authentication_string='' where user='root';
#把root用户密码修改为123456
alter user 'root' identified with mysql_native_password by '123456';
不要修改password字段,因为没有,authentication_string字段不是密码(我一开始这么以为的)。
到这里数据库已经可以在虚拟机上运行了,接下来我们要进行宿主机与虚拟机之间的通信
3.宿主机与虚拟机通讯
首先,确保虚拟机网卡是桥接模式
关掉防火墙(开放指定端口应该也行,但我懒了,就这样吧)
# 查看防火墙状态,绿的就是开着,白的就是关了
service firewalld status
# 关闭防火墙
service firewalld stop
# 开启防火墙
service firewalld start
接下来宿主机与虚拟机之间进行互ping,看看网络是否联通
#ubuntu查看ip地址
hostname -I
# win10查看IP地址,找到你使用网络的ip
ipconfig
之后就ping ip ,保证能够互联,如果不能互联,就百度看看咋解决,每个人情况多种多样
ping通之后设置一下数据库的用户连接权限,我这里设置的是root用户
# 登录数据库
mysql -u root -p
# 切换mysql数据库
use mysql
# 修改root用户连接权限,保证可以从外部访问
update user set host='%' where user='root';
# 刷新权限
flush privileges;
看一下数据库端口号,一般默认3306
show global variables like 'port';
最后尝试用sqlyog进行连接,填好ip和端口
中途遇到问题就百度,不行就重启,总之多多尝试吧