Ubuntu安装Mysql+启用远程连接的完整过程
来源:脚本之家
时间:2022-12-29 20:34:48 193浏览 收藏
亲爱的编程学习爱好者,如果你点开了这篇文章,说明你对《Ubuntu安装Mysql+启用远程连接的完整过程》很感兴趣。本篇文章就来给大家详细解析一下,主要介绍一下UbuntuMySQL、远程连接,希望所有认真读完的童鞋们,都有实质性的提高。
背景
用的是百度云的云服务器(其他云服务器同理),系统是Ubuntu 20.04 LTS,Mysql版本8.0+,需求是在Windows上开发,可以随时远程连接读写服务器上的Mysql
建立到服务器的远程连接
用ssh客户端或者云服务器厂家提供的网页版控制台都行,只要你能连上服务器就行
顺便私心推荐一个好看又好用的ssh客户端:NextSSH
用apt-get安装mysql
先更新一下apt仓库:
sudo apt-get update
顺便说一下,因为不知道你们用的都是什么账户,我也搞不清楚哪些指令权限要求比较高,所以我所有指令都加sudo
了,这样不管是谁复制粘贴都能直接用,不会出现权限问题。
然后安装mysql-server:
sudo apt-get install mysql-server -y
到这一步其实mysql就已经安完了并且自动启动了,可以看一下:
sudo service mysql status
设置root密码
此时mysql的root账户没有设置密码,可以直接用mysql
指令登录:
设置一下root的密码(mynewpassword
部分改成你自己要设置的密码):
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by 'mynewpassword';
退出,输入mysql
指令发现不能直接登录了:
目前为止可以直接在服务器上用mysql了。
编辑配置文件监听远程连接
默认情况下,MySQL 数据库仅监听本地连接,如果想让外网远程连接到数据库,我们需要修改配置文件,让 MySQL 可以监听远程固定 ip 或者监听所有远程 ip。
这里需要使用一个命令行文本编辑器,我用的vim所以就教一下vim,你们要是会nano或者别的自然知道该怎么弄,要是听不懂就照我的来。安装vim:
sudo apt-get install vim -y
然后用vim打开mysqld.cnf
配置文件:
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
找到bind-address = 127.0.0.1
这一行:
这个值是127.0.0.1
的时候只监听本地连接,改成0.0.0.0
可以监听所有连接,或者也可以改成仅允许指定ip连接都可以。
现在vim是阅读模式,按一下i
进入编辑模式,然后用上下左右键定位到这行(最下面显示INSERT的时候表明处于编辑模式,按Esc可退出返回到阅读模式):
改完之后按Esc退出编辑模式,然后输入:wq
保存退出。(若输入:q
则退出但不保存)
重启mysql service使刚才的修改生效:
sudo service mysql restart
允许root账号使用远程连接
mysql默认只允许root账号在本地使用,需要修改一下允许远程使用root账号(没试过其他账号的情况,但原理一致)。先登录mysql:
mysql -u root -p
输入密码,登录。
然后选择mysql
数据库:
use mysql;
查看账号的主机权限:
select user, host from user;
host
处为localhost
时只允许本地使用,改成%
即可远程使用:
update user set host='%' where user='root';
退出mysql。
检查ubuntu自带的防火墙状态
sudo ufw status
如果是inactive
说明防火墙没开,那就不用管了。防火墙是干嘛的呢,我自己的理解就是,如果开了防火墙,那服务器上所有端口都是默认禁止连接的,只有你允许的端口才允许连接,类似于这种:
所以如果防火墙开了,那要么把防火墙直接关了:
sudo ufw disable
要么添加一条规则让防火墙放行3306端口(mysql的默认端口):
sudo ufw allow 3306
检查云服务器厂商的防火墙状态
打开云服务器的后台管理页面,找到防火墙:
云服务器厂商默认只开启几个最常用的端口,其他端口都是默认关闭的,所以也要在这里添加一条规则放行3306端口:
测试连接
随便找个数据库管理的软件测试一下:
就连上了。常见的问题应该都提到了,如果还是连不上那你们再想想办法吧。
今天关于《Ubuntu安装Mysql+启用远程连接的完整过程》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于mysql的内容请关注golang学习网公众号!
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
112 收藏
-
202 收藏
-
328 收藏
-
139 收藏
-
240 收藏
-
420 收藏
-
435 收藏
-
311 收藏
-
127 收藏
-
326 收藏
-
310 收藏
-
242 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 542次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 508次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 497次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 484次学习
-
- 昏睡的云朵
- 太给力了,一直没懂这个问题,但其实工作中常常有遇到...不过今天到这,帮助很大,总算是懂了,感谢大佬分享技术文章!
- 2023-01-09 09:33:59
-
- 轻松的抽屉
- 这篇博文太及时了,好细啊,太给力了,已收藏,关注作者了!希望作者能多写数据库相关的文章。
- 2023-01-07 21:27:38
-
- 贪玩的花卷
- 很有用,一直没懂这个问题,但其实工作中常常有遇到...不过今天到这,帮助很大,总算是懂了,感谢up主分享技术文章!
- 2023-01-01 10:26:45
-
- 正直的棒棒糖
- 太细致了,码起来,感谢楼主的这篇博文,我会继续支持!
- 2023-01-01 07:13:30
-
- 彩色的花生
- 这篇技术文章真及时,很详细,感谢大佬分享,已收藏,关注up主了!希望up主能多写数据库相关的文章。
- 2022-12-31 22:57:11
-
- 陶醉的灯泡
- 好细啊,已加入收藏夹了,感谢作者的这篇文章内容,我会继续支持!
- 2022-12-31 14:56:49