Ubuntu 服务器安装 MySQL 远程数据库的方法

 更新时间:2022年08月18日 10:26:16   作者:ZewanHuang  
本篇介绍如何在 Linux 服务器上安装 MySQL 数据库,并设置为可远程连接,本文通过命令给大家介绍的非常详细,对Ubuntu 安装 MySQL远程数据库感兴趣的朋友一起看看吧

在 Web 项目中,我们需要使用到远程数据库,开发阶段也需要连接并查看数据库的状况。腾讯云、阿里云等云平台提供了远程数据库,可直接使用;当然也可以自己在部署 Web 的服务器上安装数据库,将其配置为远程数据库,供 Web 应用使用。

本篇介绍如何在 Linux 服务器上安装 MySQL 数据库,并设置为可远程连接。

在 Ubuntu 上安装 MySQL

为安装最新版本的 MySQL,我们可以先更新一下 apt 管理的资源包。

以 sudo 用户身份登录,执行以下命令:

sudo apt update

待更新完毕后,输入以下命令,安装 MySQL:

sudo apt install mysql-server

安装完成后,MySQL 服务会自动启动。想验证 MySQL 正在运行,输入:

sudo systemctl status mysql

输出如下图,即表示已启动。

开启远程连接权限

编辑 MySQL 配置文件

默认情况下,MySQL 数据库仅监听本地连接。若想允许远程连接数据库,首先需要修改配置文件,让 MySQL 可以监听远程固定 IP 或所有远程 IP。

配置文件 mysqld.cnf 路径一般为 /etc/mysql/mysql.conf.d/mysqld.cnf

输入以下命令打开编辑:

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

找到 bind-address 一行,默认该值为 127.0.0.1,仅监听本地连接。我们将其改为远程连接 IP 可访问,可以使用通配符 IP 地址 0.0.0.0,也可以是固定 IP,仅允许指定 IP 连接。这里我修改为 0.0.0.0,允许所有 IP 地址访问。

在某些 MySQL 版本的配置文件中,没有 bind-address 一行,在如上图的合适位置上添加即可。

更改后,保存并退出编辑器(使用 Ctrl+X 保存并退出)。后重启 MySQL 服务,使新配置生效。

sudo systemctl restart mysql

创建 MySQL 用户

以 sudo 权限进入 MySQL 服务:

sudo mysql

进入 MySQL 后,创建一个可远程连接 MySQL 的用户,并设置为使用密码作为认证方式。

CREATE USER 'zewan'@'%' IDENTIFIED WITH mysql_native_password BY 'zewan1234';

上述命令中,% 表示 IP 任意,@ 前的用户名和 BY 后面的密码修改为自己的信息。

执行完毕后,使用下列命令可以查看到所有的 user,包括我们新建的:

SELECT DISTINCT CONCAT('User: ''', user, '''@''', host, ''';') AS quert FROM mysql.user;

接下来,我们赋予该用户拥有所有数据库的访问权限,使其成为新的独立管理用户:

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

最后,刷新 MySQL 系统权限相关表,更新缓存,并退出 MySQL。

FLUSH PRIVILEGES;
EXIT;

远程连接 MySQL 数据库

命令行远程访问

命令格式如下:

mysql -u <username> -h <mysql_server_ip> -p

Jetbrains 家族 Database 连接

在 IDEA、Pycharm 等软件中,内置 Database 访问插件,具备可视化数据库表的功能,一般在右侧任务栏点击展开。

点击加号,选择 MySQL 作为 Data Source。

在弹出框中,填入远程数据库IP(Host)、用户名(User)、密码(Password),后点击 Test connection 尝试连接。出现下图成功标识,即表示可成功连接数据库,随后点击应用(Apply)即可。

随后,软件中会出现 console,我们可以在这里输入 MySQL 语句并点击绿色启动按钮执行命令,同时可双击右侧弹出栏中的数据库表,查看信息。

附上 MySQL 创建数据库,并指定编码 UTF8 的命令:

CREATE DATABASE `mydb` CHARACTER SET utf8 COLLATE utf8_general_ci;

到此这篇关于Ubuntu 服务器安装 MySQL 远程数据库的文章就介绍到这了,更多相关Ubuntu 安装 MySQL远程数据库内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • MySQL系列之四 SQL语法

    MySQL系列之四 SQL语法

    SQL是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统,这篇文章主要给大家介绍了SQL语法的相关资料,需要的朋友可以参考下
    2021-07-07
  • mysql清空表数据的两种方式和区别解析

    mysql清空表数据的两种方式和区别解析

    这篇文章主要介绍了mysql清空表数据的两种方式和区别,本文通过文字实例代码相结合给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-05-05
  • Java连接Mysql 8.0.18版本的方法详解

    Java连接Mysql 8.0.18版本的方法详解

    这篇文章主要介绍了Java和Mysql 8.0.18版本的连接方式,文中安装步骤介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-10-10
  • MySQL 5.0触发器参考教程

    MySQL 5.0触发器参考教程

    需要学习mysql触发器的朋友需要了解的东西,整理的比较多,建议大家慢慢多练习
    2008-09-09
  • win2003 mysql单向同步配置步骤[已测]

    win2003 mysql单向同步配置步骤[已测]

    为了服务器安全特将mysql同步了下,由于时间长了经常忘记,特以此整理下了,方便经常支持脚本之家的朋友。
    2011-06-06
  • 基于MySQL Master Slave同步配置的操作详解

    基于MySQL Master Slave同步配置的操作详解

    本篇文章是对MySQL Master Slave 同步配置进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • MySQL中union和union all区别

    MySQL中union和union all区别

    今天和大家聊一聊,面试中可能遇到的一个知识点,就是union与union all的区别,具有一定的参考价值,对面试和知识总结有一定的帮助,感兴趣的可以了解一下
    2023-08-08
  • mysql存储过程多层游标循环嵌套的写法分享

    mysql存储过程多层游标循环嵌套的写法分享

    这篇文章主要介绍了mysql存储过程多层游标循环嵌套的写法,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • mysql server is running with the --skip-grant-tables option

    mysql server is running with the --skip-grant-tables option

    今天在mysql中新建数据库提示The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement,原来是数据中配置的--skip-grant-tables,这样安全就降低了,这个一般当忘记root密码的时候需要这样操作
    2017-07-07
  • Centos6.9安装Mysql5.7.18步骤记录

    Centos6.9安装Mysql5.7.18步骤记录

    本文给大家详细介绍了Centos6.9安装Mysql5.7.18的步骤,非常不错,具有参考借鉴价值,需要的朋友参考下吧
    2017-06-06

最新评论