Ubuntu 上安装 MySQL 并且实现远程登录

news2024/11/25 20:39:17

目录

1. 安装MySQL

2. 安全配置MySQL

3. 配置MySQL远程登录

3.1. 允许远程连接

3.2. 重启MySQL服务

3.3. 为用户分配远程访问权限

进入MySQL后,执行以下命令:

3.4. 创建新用户

3.5. 授予权限

3.6. 刷新权限

3.7. 退出 MySQL 控制台

4. 配置防火墙

5. 测试远程连接


在Ubuntu上创建MySQL并实现远程登录的步骤如下:

1. 安装MySQL

打开终端,执行以下命令来更新软件包和安装MySQL:

sudo apt update 
sudo apt install mysql-server 

安装完成后,MySQL服务会自动启动。可以使用以下命令检查MySQL服务状态:

sudo systemctl status mysql 

2. 安全配置MySQL

运行MySQL的安全脚本来移除默认的设置(如匿名用户、测试数据库等),并为root用户设置密码:

sudo mysql_secure_installation 

根据提示进行选择,建议:

  • 设置root用户密码
  • 移除匿名用户
  • 禁止root远程登录(可以根据需要允许)
  • 删除测试数据库
  • 重新加载权限表

3. 配置MySQL远程登录

3.1. 允许远程连接

打开MySQL配置文件并查找bind-address参数:

sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf 

找到如下行:

bind-address = 127.0.0.1 

127.0.0.1改为0.0.0.0,以允许所有IP地址连接:

bind-address = 0.0.0.0 

保存文件并退出编辑器。

3.2. 重启MySQL服务

修改完成后,重启MySQL服务以应用更改:

sudo systemctl restart mysql 
3.3. 为用户分配远程访问权限

登录MySQL数据库并为需要远程访问的用户分配权限。例如,为root用户在任意主机上允许访问:

sudo mysql -u root -p 

第一次进入可以设置密码,密码格式是之前 安全设置 选择的 (例如:12345678)

进入MySQL后,执行以下命令:
3.4. 创建新用户

一旦登录到 MySQL 控制台,执行以下命令创建一个新的 MySQL 用户并设置密码:

CREATE USER 'new_user'@'%' IDENTIFIED BY 'new_password'; 
  • 替换 new_user 为你想要的用户名。
  • 替换 new_password 为你想要的密码。
3.5. 授予权限

为新用户授予对所有数据库的权限:

GRANT ALL PRIVILEGES ON *.* TO 'new_user'@'%' WITH GRANT OPTION; 

这将允许新用户从任何地方(% 代表任意主机)连接到MySQL,并拥有所有权限。

3.6. 刷新权限

运行以下命令来刷新权限表,使更改生效:

FLUSH PRIVILEGES; 
3.7. 退出 MySQL 控制台

退出 MySQL:

EXIT;

4. 配置防火墙

为了确保远程访问MySQL,需要开放MySQL默认的3306端口:

sudo ufw allow 3306 

5. 测试远程连接

现在你可以尝试从远程主机连接到MySQL服务器了。使用以下命令:

mysql -u username -h server_ip -p 

替换username为你创建的MySQL用户名,server_ip为你Ubuntu服务器的IP地址。

这样,MySQL应该可以正常远程访问了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2193289.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2024.9月29日~10月6日 SSM框架项目-《电信资费管理系统》

一、数据库介绍: 1、account:帐务信息表 2、admin_info:管理员信息表 3、admin_role:管理员角色信息表 4、cost:资费信息表 5、privilege_info:权限信息表 6、role_info:角色信息表 7、role_pri…

在CentOS7上安装mysql

目录 1.下载安装文件 2.上传到CentOS7上 3.解压MySQL文件 4.清理系统中残留的MySQL 5.安装MySQL 6.启动MySQL 并 设置开机自启动 7.查找临时密码,并修改密码 注意: 教程:在Linux上安装mysql(超详细版)_哔哩哔哩…

人工智能新闻和发展 (24001)- By 10/4/2024

1. 谷歌增强了搜索中的人工智能,允许对图像进行语音提问。 Google adding AI to answer voiced questions about images | AP NewsGoogle is pumping more artificial intelligence into its search engine. New features will enable people to voice questions a…

[C#]使用onnxruntime部署yolov11-onnx实例分割模型

【官方框架地址】 https://github.com/ultralytics/ultralytics.git 【算法介绍】 在C#中使用ONNX Runtime部署YOLOv11-ONNX实例分割模型,涉及到模型的加载、数据预处理、模型推理和后处理几个关键步骤。 首先,需要确保已经安装了ONNX Runtime的NuGe…

【数据结构】【链表代码】随机链表的复制

/*** Definition for a Node.* struct Node {* int val;* struct Node *next;* struct Node *random;* };*/typedef struct Node Node; struct Node* copyRandomList(struct Node* head) {if(headNULL)return NULL;//1.拷贝结点,连接到原结点的后面Node…

[Linux] 进程创建、退出和等待

标题:[Linux] 进程创建、退出和等待 个人主页水墨不写bug (图片来源于AI) 目录 一、进程创建fork() 1) fork的返回值: 2)写时拷贝 ​编辑3)fork常规用法 4&#xff…

目标侦测划分数据集代码--->voc

代码如下: import glob import os import random import shutil # 划分比例 p3/4#训练集 xmlpathE:\\shujuji\\MASK\\Annotations\\* imgpathE:\\shujuji\\MASK\\JPEGImages\\* xmlpathsglob.glob(xmlpath) imgpathsglob.glob(imgpath) my_list[i for i in range(l…

MATLAB图像去雾系统

应用背景 现在工业发展迅速,产生的废气很严重,导致雾霾厉害,现在虽然有硬件来拍摄,可以清晰化视野,但是硬件成本昂贵,急需寻求一种算法来帮助雾霾的清晰处理。显得经济。 采用算法原理 本文采用全局直方…

走进异常类的世界,自定义业务异常类实现指南

接下来这篇文章,小编将带领大家走进异常类的世界,探索异常类的奥秘。 引言 学习Java异常类,需掌握其基础概念,如try-catch语句、throw与throws关键字。通过实例理解异常层次结构,区分已检查与未检查异常。实践编写自定…

springboot文件上传(阿里云oss)

本地存储 使用uuid是为了避免文件名的重复&#xff0c;防止覆盖 RestController public class FIleUploadController {PostMapping("/upload")public Result<String> upload(MultipartFile file) throws IOException {//把文件的内容存储到本地磁盘上String …

基于SpringBoot+Vue的在线投票系统

作者&#xff1a;计算机学姐 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等&#xff0c;“文末源码”。 专栏推荐&#xff1a;前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏&#xff1a;…

C++的STL标准模版库容器--list类

前言 list(双向链表)类属于STL标准模版库容器模块&#xff0c;它的迭代器是双向迭代器&#xff0c;也比较好理解&#xff0c;它申请空间不是一次申请一块空间而是每一个节点各自独立的空间&#xff0c;它不再能够支持随机访问和[]&#xff0c;如果想要和string类容器或者vecto…

集合源码1

一、List接口分析 1、list接口的特点 ①List集合的所有元素是由一种线性方式进行存储的。 ②它是一个元素存储有序的集合。即元素的存入顺序和取出顺序有保证。 ③他是一个带有索引的集合&#xff0c;通过索引就可以精确的操作集合中的元素 ④集合中可以有重复的元素&#xff0…

二分查找算法——寻找旋转排序数组中的最小值点名

1.题目解析 题目来源&#xff1a;LCR173.点名——力扣 原名&#xff1a;剑指offer——0~n-1中消失的数字 测试用例 题目来源&#xff1a;153.寻找旋转排序数组中的最小值——力扣 测试用例 2.算法原理 点名 如果要寻找消失的数字&#xff0c;可以判断对应下标的数字是否和下标对…

视觉定位Revisit Anything

Revisit Anything: Visual Place Recognition via Image Segment Retrieval 项目地址 摘要&#xff1a; 准确识别重游地点对于嵌入代理的定位和导航至关重要。这要求视觉表现清晰&#xff0c;尽管摄像机视点和场景外观有很大变化。现有的视觉地点识别管道对“整个”图像进行编码…

制作离线版Koczkatamas工具包

一、下载源码 从https://github.com/koczkatamas/koczkatamas.github.io下载koczkatamas.github.io-master.zip 二、解压 $ unzip koczkatamas.github.io-master.zip三、运行index.html 可以看到输入一个字符后&#xff0c;下面的各种编码都没有显示&#xff0c;则表示运行…

【玩转 JS 函数式编程_008】3.1.2 JavaScript 函数式编程筑基之:箭头函数——一种更流行的写法

文章目录 3.1.2 箭头函数——更流行的方式 Arrow functions - the modern way1. 返回值 Returning values2. this 值的处理 Handling the this value3. arguments 的处理 Working with arguments4. 单参数还是多参数&#xff1f; One argument or many? 写在前面 故天将降大任…

儿童需要学习C++多久才能参加信息学奥赛的CSP-J比赛?

信息学奥赛&#xff08;NOI&#xff09;是国内编程竞赛领域的顶尖赛事&#xff0c;而对于初学者来说&#xff0c;参加NOI的第一步通常是通过CSP-J&#xff08;全国青少年信息学奥林匹克联赛初赛&#xff09;&#xff0c;这也是面向青少年程序员的入门级竞赛。作为信息学奥赛的基…

vue3使用three.js加载.obj模型示例

vue3使用three.js加载.obj模型示例 效果&#xff1a; 代码&#xff1a; 需要先安装three.js npm install three<template><div ref"threeContainer" class"three-container"></div> </template><script> import * as TH…

男单新老对决:林诗栋VS马龙,巅峰之战

听闻了那场激动人心的新老对决&#xff0c;不禁让人热血沸腾。在这场乒乓球的巅峰之战中&#xff0c;林诗栋与马龙的对决无疑是一场视觉与技术的盛宴。 3:3的决胜局&#xff0c;两位选手的每一次挥拍都充满了策略与智慧&#xff0c;他们的每一次得分都让人心跳加速。 林诗栋&am…