Ubuntu系统创建mariadb数据库(mysql),开通局域网络内连接

发布于:2025-02-26 ⋅ 阅读:(15) ⋅ 点赞:(0)

Ubuntu系统创建mariadb数据库(mysql),开通局域网络内连接

1、安装数据库

如果你确定系统中没有安装 mariadb,可以使用以下命令进行安装:

sudo apt update
sudo apt install mariadb-server -y

如果你只想安装客户端,可以使用以下命令:

sudo apt install mariadb-client

2、启动数据库

可以使用以下命令启动它:

sudo systemctl start mariadb

若希望服务在系统启动时自动启动,可以使用以下命令设置:

sudo systemctl enable mariadb

3、测试登录

如果权限不足,可以尝试以 root 用户身份连接数据库:

sudo mysql -u root -p

4、局域网内其它电脑连接数据库设置

步骤 1:确保 MariaDB 服务已启动并设置为开机自启

在 Ubuntu 系统中,使用以下命令来检查 MariaDB 服务的运行状态,并确保它在系统启动时自动启动:

# 检查MariaDB服务状态
sudo systemctl status mariadb

# 若MariaDB未运行,使用以下命令启动
sudo systemctl start mariadb

# 设置MariaDB服务开机自启
sudo systemctl enable mariadb
步骤 2:修改 MariaDB 配置文件以允许远程连接

默认情况下,MariaDB 只允许本地连接。你需要修改 MariaDB 的配置文件,使其监听所有可用的网络接口。

  1. 打开 MariaDB 配置文件50-server.cnf
sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf
  1. 找到bind-address这一行,将其值从127.0.0.1修改为0.0.0.0,表示监听所有可用的网络接口:
bind-address  = 0.0.0.0
  1. 保存并关闭文件(在nano编辑器中,按Ctrl + X,然后按Y,最后按Enter)。
  2. 重启 MariaDB 服务使配置生效:
sudo systemctl restart mariadb
步骤 3:创建允许远程连接的 MariaDB 用户

你需要创建一个新的 MariaDB 用户,并授予该用户从任何 IP 地址(%)连接到数据库的权限。

使用root用户登录到 MariaDB:

sudo mysql -u root -p

1.创建一个新用户并设置密码,这里以用户名为remote_user,密码为your_password为例:

CREATE USER 'remote_user'@'%' IDENTIFIED BY 'your_password';

2.授予该用户对特定数据库的权限,如果你想让该用户拥有对所有数据库的所有权限,可以使用以下命令:

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

如果你只想让 remote_user 用户拥有某个特定数据库(例如 test_db)的权限,可以执行以下 SQL 语句:

GRANT SELECT, INSERT, UPDATE, DELETE ON test_db.* TO 'remote_user'@'%';
FLUSH PRIVILEGES;

3.刷新权限使更改生效:

FLUSH PRIVILEGES;

4.退出 MariaDB:

EXIT;
步骤 4:配置防火墙以允许 MariaDB 端口访问

默认情况下,Ubuntu 系统的防火墙(ufw)可能会阻止外部对 MariaDB 端口(默认是 3306)的访问。你需要开放该端口:

# 允许3306端口的TCP流量
sudo ufw allow 3306/tcp

# 重新加载防火墙规则
sudo ufw reload
步骤 5:在其他局域网电脑上测试连接

在其他局域网内的电脑上,使用 MariaDB 客户端工具(如mysql命令行工具,因为 MariaDB 和 MySQL 客户端兼容性较好)来连接到 Ubuntu 系统中的 MariaDB 数据库。

  • 使用mysql命令行工具连接:
mysql -h <Ubuntu系统的IP地址> -u remote_user -p