Windows主机Navicat远程连接到Ubuntu18.04虚拟机MySQL

1. 在虚拟机上安装MySQL
bash 复制代码
sudo apt-get install mysql-server
sudo apt-get install libmysqlclient-dev
2. 检查安装
bash 复制代码
sudo netstat -tap | grep mysql
3. 查看默认密码
bash 复制代码
sudo cat /etc/mysql/debian.cnf
4. 用查看到的密码登录MySQL server,修改root用户的密码
bash 复制代码
mysql -u debian-sys-maint -pKk3TbShbFNvjvhpM
#注意-p后面紧跟上面查看到的密码
bash 复制代码
#进入mysql>的命令模式后,通过下面三行代码修改密码为123456
update mysql.user set authentication_string=password('123456') where
user='root' and host='localhost';

update mysql.user set plugin="mysql_native_password";

flush privileges;

#退出mysql命令模式
exit;

#重新用root和123456登录mysql-server
mysql -u root -p
#123456(输入密码)
5. 设置MySQL字符编码utf8,可以支持中文操作
sql 复制代码
#在MySQL命令模式下
show variables like "char%";

#修改
set character_set_server=utf-8;

接下来是连接到远程连接。

6. 远程连接

作者在远程连接的时候也遇到了一系列问题,经过查询最后成功解决。主要尝试了以下。

  • 首先进入MySQL配置文件中将bind-address修改为0.0.0.0
bash 复制代码
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
  • 进入到MySQL命令模式,开启了远程连接权限
sql 复制代码
#自行登录MySQL服务后...
#开启远程连接权限
grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;
#刷新一下
flush privileges;
  • 查看并修改了Linux主机的防火墙状态
bash 复制代码
#开启对MySQL默认端口号3306的访问
ufw status
ufw allow 3306
#开启本机IP对Linux上服务器额度访问
#在本机打开CMD等终端,使用ipconfig找到虚拟机IP,回到Ubuntu
ufw allow from 本机IP

此后就是在Navicat上来连接虚拟机的MySQL数据库了

整个连接过程中,遇到了1130错误代码(如下图所示的错误代码),经过上面的步骤也是解决了,成功连接。

相关推荐
柊二三1 小时前
XML的简略知识点
xml·数据库·oracle
世界emm2 小时前
Windows 10 远程桌面(RDP)防暴力破解BAT脚本
windows
每天敲200行代码4 小时前
MySQL 事务管理
数据库·mysql·事务
巴里巴气4 小时前
MongoDB索引及其原理
数据库·mongodb
程序员勋勋14 小时前
Redis的String数据类型底层实现
数据库·redis·缓存
不修×蝙蝠5 小时前
MySQL 全详解:从入门到精通的实战指南
数据库·mysql·索引·最左前缀
闻道且行之5 小时前
Windows|CUDA和cuDNN下载和安装,默认安装在C盘和不安装在C盘的两种方法
windows·深度学习·cuda·cudnn
我的ID配享太庙呀6 小时前
Django 科普介绍:从入门到了解其核心魅力
数据库·后端·python·mysql·django·sqlite
C++ 老炮儿的技术栈6 小时前
在 Scintilla 中为 Squirrel 语言设置语法解析器的方法
linux·运维·c++·git·ubuntu·github·visual studio
墨痕砚白6 小时前
VMware Workstation Pro虚拟机的下载和安装图文保姆级教程(附下载链接)
服务器·windows·vmware·虚拟机