搭建一台linux虚拟机的mysql服务器,通过本地电脑连接远程mysql的服务器
文章目录
- 搭建一台linux虚拟机的mysql服务器,通过本地电脑连接远程mysql的服务器
1. 准备一台Linux服务器
云服务器(有钱人)或者虚拟机都可以(我用虚拟机);
DataGrip 2021.2.2 数据库可视化工具(挺好用)
VMware Workstation Pro 16 VM虚拟机(网上有很多密钥)
Linux的虚拟机ios版本为 CentO S7(额外去下载镜像)
注意:FinalShell 只支持 jdk18的版本,
把下载好的iOS镜像文件在 vm pro16 中 (打开)
1.新建虚拟机 > 2. 选中 典型(推荐) > 3.点击安装程序光盘 并 点击浏览 选中把下载好的iOS镜像文件 > 4. 一步下一步 > 5.打开
补充: 文件名 和 文件的目录要一致不然会报错
1.2 打开 新建的虚拟机
首次打开 出现 需要用户设置 根密码 和 密码,
我只设置一次,全都是 servehost , 方便记忆
1.3 测试 主机ip 和虚拟机ip
使用cmd命令行窗口 查看本机ip
ipconfig
在虚拟机的可以右击打开终端(open Terminal)
ifconfig
[servehost@localhost ~]$ ifconfig
ens32: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.89.128 netmask 255.255.255.0 broadcast 192.168.89.255
inet6 fe80::ef24:8449:aa:befd prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:d9:e8:67 txqueuelen 1000 (Ethernet)
RX packets 1233416 bytes 1741944946 (1.6 GiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 248237 bytes 24076122 (22.9 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 674 bytes 82223 (80.2 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 674 bytes 82223 (80.2 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
virbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether 52:54:00:29:29:8c txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
然后把拿到的ip 通过 ping ip 进行测试即可
1.4 打开 FinalShell
- 右击左上角文件夹图标(蓝色)
- 再点击文件夹图标(白色有+号的)
- 点击 远程桌面链接
之后:
参数说明
名称:随意(我默认跟主机名一样),
主机:虚拟机的终端 ifconfig
端口:22
方法:选密码
用户:你的虚拟机注册用户(正在登录的)(我全程用 servehost)
密码:虚拟机用户注册的密码(我也用servehost)
高级:那两个选项都不勾
注意:为什么用户与密码一样?好记,省事,前提你一开始就在虚拟机注册用户的时候设置的一样,不然错了可不要怪我😸
2. 下载Linux版MySQL安装包(8.0.26)🚀
https://downloads.mysql.com/archives/community/
3. 上传MySQL安装包✈️
成功后,就看到mysql的包出现了
4. (1)创建mysql目录,(2)并解压到(mysql目录)
mkdir mysql
tar -xvf mysql-8.0.26-1.el7.x86_64.rpm-bundle.tar -C mysql
上面输入以下代码即可
servehost用户加特权变成root:
获得root特权
方法一:##usermod -g root servehost
su -
输入用户密码:方法二:
su root
输入用户密码:取消root特权:
1.exit
接下来还要切换目录烦死
cd …
cd home/servehost/mysql
最后完成任务,出现以下结果
[root@localhost mysql]#
5. 安装mysql的安装包🚀
//1,切换到mysql文件夹
cd mysql
//2.安装支持mysql相关插件
yum install openssl-devel
//3.安装mysql的插件
sudo yum install mysql-community-{server,client,common,libs}-*
6. 启动MySQL服务💡
systemctl start mysqld
systemctl restart mysqld
systemctl stop mysqld
7. 启动MySQL服务之后,‘root’@‘localhost’ 后面会出现密码 颜色不一样的英文字母🤔
复制生成的密码, 完成登录 .
8. 修改root用户密码 ⚡
登录到MySQL之后,需要将自动生成的不便记忆的密码修改了,修改成自己熟悉的便于记忆的密码。
ALTER USER 'root'@'localhost' IDENTIFIED BY '1234';
执行上述的SQL会报错,原因是因为设置的密码太简单,密码复杂度不够。我们可以设置密码的复杂度为简单类型,密码长度为4。
set global validate_password.policy = 0;
set global validate_password.length = 4;
降低密码的校验规则之后,再次执行上述修改密码的指令。
9. 创建用户🤡
默认的root用户只能当前节点localhost访问,是无法远程访问的,我们还需要创建一个root账户,用户远程访问
create user 'root'@'%' IDENTIFIED WITH
mysql_native_password BY '1234';
10. 并给root用户分配权限✨
grant all on *.* to 'root'@'%';
11. 重新连接MySQL🏬
mysql -u root -p
然后输入密码
12.关闭Centos7防火墙🔥
1、命令行界面输入命令“systemctl status firewalld.service”并按下回车键。
2、然后在下方可以查看得到“active(running)”,此时说明防火墙已经被打开了。
3、在命令行中输入systemctl stop firewalld.service命令,进行关闭防火墙。
4、然后再使用命令systemctl status firewalld.service,在下方出现disavtive(dead),这权样就说明防火墙已经关闭。
5、再在命令行中输入命令“systemctl disable firewalld.service”命令,即可永久关闭防火墙。
12. 通过DataGrip远程连接MySQL
1.百度搜索 怎么汉化即可把中文插件安装,重启即可
进入后
以下图是未重启画面~~~~
成功后
用户:是 你在linux虚拟机上使用mysql创建的用户root,密码也是
密码: (我上面是写的1234)
名称:随意
注释:随意
端口:3306 (默认)
数据库:可以为空
点击测试链接🛩
🍚总结
事件基本告一段落了,拜拜各位同胞,每天多学习啊,另外的基本就这些,饭我都做好了,这位客官你不留点足迹吗? 🤑