当前位置: 首页 > news >正文

Ubuntu操作系统下MySQL、MongoDB、Redis

        在开发和运维过程中,经常需要从Windows客户端远程连接到Ubuntu服务器上的数据库。本文将详细介绍如何在Ubuntu操作系统下安装和配置MySQL、MongoDB和Redis,以允许从Windows客户端进行远程连接,并提供详细的远程连接命令和配置说明。

一、MySQL安装及远程连接配置

(一)Ubuntu服务器端安装与配置

  1. 更新软件包列表

    sudo apt update
  2. 安装MySQL服务

    sudo apt install mysql-server
  3. 安全配置

    运行以下命令来执行安全配置,包括设置root密码、移除匿名用户、禁止root用户远程登录等。
    sudo mysql_secure_installation
  4. 创建远程用户并授权

    登录到MySQL服务器:
    sudo mysql -u root -p
    创建一个允许从任何IP地址连接的用户(假设用户名为remoteuser,密码为password
    CREATE USER 'remoteuser'@'%' IDENTIFIED BY 'password';
    GRANT ALL PRIVILEGES ON *.* TO 'remoteuser'@'%' WITH GRANT OPTION;
    FLUSH PRIVILEGES;
    这里'%'表示允许从任何IP地址连接。出于安全考虑,你可以将'%'替换为特定的IP地址或IP段,例如'192.168.1.100'
  5. 修改MySQL配置文件

    编辑MySQL的配置文件,允许远程连接。配置文件通常位于/etc/mysql/mysql.conf.d/mysqld.cnf
    sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
    找到bind-address = 127.0.0.1,将其注释掉或修改为bind-address = 0.0.0.0
    # bind-address = 127.0.0.1
    bind-address = 0.0.0.0
    保存并关闭文件。
  6. 重启MySQL服务

    保存配置文件后,重启MySQL服务以使更改生效
    sudo systemctl restart mysql
  7. 防火墙配置

    确保Ubuntu服务器的防火墙允许来自Windows的连接。可以使用以下命令开放MySQL的默认端口3306
    sudo ufw allow 3306/tcp
    sudo ufw reload

(二)Windows客户端远程连接命令

  1. 使用MySQL命令行工具

    打开命令提示符,使用以下命令连接到Ubuntu服务器上的MySQL数据库
    mysql -h <Ubuntu服务器IP地址> -u remoteuser -p
    系统会提示你输入密码,输入remoteuser用户的密码即可。
  2. 使用MySQL Workbench

    • 打开MySQL Workbench,点击“+”号添加一个新的连接。

    • 在“Connection Name”中输入连接名称,例如“Ubuntu MySQL”。

    • 在“Hostname”中输入Ubuntu服务器的IP地址。

    • 在“Username”中输入创建的远程用户名(remoteuser)。

    • 在“Password”中输入对应的密码(password)。

    • 点击“Test Connection”测试连接是否成功。如果一切配置正确,应该会看到“Connection successful!”的提示。

二、MongoDB安装及远程连接配置

(一)Ubuntu服务器端安装与配置

  1. 导入MongoDB公

    sudo apt-get install gnupg curl
    curl -fsSL https://www.mongodb.org/static/pgp/server-8.0.asc | \sudo gpg -o /usr/share/keyrings/mongodb-server-8.0.gpg \--dearmor
  2. 创建列表文

    echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-8.0.gpg ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/8.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-8.0.list
  3. 加载包数据库并安装MongoD

    sudo apt-get update
    sudo apt-get install -y mongodb-org
  4. 启动MongoDB服

    sudo systemctl start mongod
  5. 修改MongoDB配置文件

    1.编辑MongoDB的配置文件,允许远程连接。配置文件通常位于/etc/mongod.conf
    sudo vim /etc/mongod.conf
    2.找到bindIp选项,将其值从127.0.0.1修改为0.0.0.0
    # network interfaces
    net:port: 27017bindIp: 0.0.0.0
    3.保存并关闭文件。
  6. 重启MongoDB服务

    保存配置文件后,重启MongoDB服务以使更改生效
    sudo systemctl restart mongod
  7. 防火墙配置

    确保Ubuntu服务器的防火墙允许来自Windows的连接。可以使用以下命令开放MongoDB的默认端口27017
    sudo ufw allow 27017/tcp
    sudo ufw reload

(二)Windows客户端远程连接命令

  1. 使用MongoDB Shell

    打开命令提示符,使用以下命令连接到Ubuntu服务器上的MongoDB数据库
    mongo <Ubuntu服务器IP地址>:27017
  2. 使用MongoDB Compass

    • 打开MongoDB Compass,点击“+”号添加一个新的连接。

    • 在“Connection String”中输入Ubuntu服务器的IP地址和端口号(默认为27017),格式为mongodb://<IP地址>:27017

    • 点击“Connect”按钮连接到MongoDB服务器。如果一切配置正确,应该能够成功连接并看到数据库列表。

三、Redis安装及远程连接配置

(一)Ubuntu服务器端安装与配置

  1. 更新软件包列表

    sudo apt update
  2. 安装Redis服务

    sudo apt install redis-server
  3. 修改Redis配置文件

    1.编辑Redis的配置文件,允许远程连接。配置文件通常位于/etc/redis/redis.conf
    sudo vim /etc/redis/redis.conf
    2.找到bind 127.0.0.1,将其注释掉或修改为bind 0.0.0.0
    # bind 127.0.0.1
    bind 0.0.0.0
    3.保存并关闭文件。
  4. 重启Redis服务

    保存配置文件后,重启Redis服务以使更改生效
    sudo systemctl restart redis-server
  5. 防火墙配置

    确保Ubuntu服务器的防火墙允许来自Windows的连接。可以使用以下命令开放Redis的默认端口6379
    sudo ufw allow 6379/tcp
    sudo ufw reload

(二)Windows客户端远程连接命令

  1. 使用Redis-cli

    打开命令提示符,使用以下命令连接到Ubuntu服务器上的Redis数据库
    redis-cli -h <Ubuntu服务器IP地址> -p 6379
  2. 使用Redis Desktop Manager

    • 打开Redis Desktop Manager,点击“+”号添加一个新的连接。

    • 在“Name”中输入连接名称,例如“Ubuntu Redis”。

    • 在“Host”中输入Ubuntu服务器的IP地址。

    • 在“Port”中输入Redis的端口号(默认为6379)。

    • 点击“Save”保存连接配置。

    • 点击“Connect”按钮连接到Redis服务器。如果一切配置正确,应该能够成功连接并看到Redis的键值对数据。

四、安全性注意事项

  1. 使用强密码

    确保为远程用户设置强密码,避免使用容易被猜测的密码。
  2. 限制IP地址

    在创建远程用户时,尽量将'%'替换为特定的IP地址或IP段,以限制只有特定的IP地址可以连接到数据库。
  3. 使用VPN或SSH隧道

    在生产环境中,建议通过VPN或SSH隧道进行连接,以提高安全性。例如,可以通过以下命令使用SSH隧道连接到MySQL服务器
    ssh -L 3306:localhost:3306 user@ubuntu_server_ip
    然后在Windows客户端中,将“Hostname”设置为localhost,端口号设置为3306
  4. 防火墙规则

    确保防火墙规则只允许来自可信IP地址的连接。可以使用ufw命令来管理防火墙规则
    sudo ufw allow from <IP地址> to any port 3306
    sudo ufw allow from <IP地址> to any port 27017
    sudo ufw allow from <IP地址> to any port 6379
    sudo ufw reload

        通过以上详细步骤,你可以确保MySQL、MongoDB和Redis在Ubuntu服务器上正确安装和配置远程连接,并且从Windows客户端能够安全地访问这些数据库。希望这些信息对你有帮助!

http://www.dtcms.com/a/351538.html

相关文章:

  • 如何拯救一家濒临破产的科技公司?
  • C++工程实战入门笔记5-函数(二)
  • React前端开发_Day1
  • 迅为R3588S开发板ADB使用手册-运行shell
  • ctfshow_萌新web16-web20-----文件包含日志注入
  • 运算符(1)
  • 函数默认值的陷阱:用None和Docstring来描述可变默认值的参数 (Effective Python 第24条)
  • Qt 窗口 - 1
  • [Maven 基础课程]IDEA 配置 Maven
  • 基于 W55MH32Q-EVB 实现 FatFs 文件系统+FTP 服务器
  • C++ SNIFE
  • 数据结构——链表(2)——双向链表
  • 【图像处理 - 基础知识】ISP(Image Signal Processor)处理
  • 深度学习之卷积神经网络
  • 组件版本升级 - MySQL_8.4对比MySQL_8.0
  • 用 mem0 构建一个简单的 AI Healthcare 助手
  • 基于Vue通用组件定制化的场景解决
  • UNet改进(35):基于WGAM模块的PyTorch实战
  • Qt在Linux下编译发布 -- linuxdeployqt的使用
  • 第十九节:阴影进阶 - 软阴影与性能平衡技术
  • FileMenu Tools for Win:突破 Windows 文件管理困境的利器
  • Git:基本使用
  • 数字化转型三阶段:从信息化、数字化到数智化的战略进化
  • Leetcode+Java+动态规划II
  • 知行——同为科技24周年庆典
  • Thingsboard 租户管理员权限,增加租户普通用户权限
  • Go errgroup:高效并发控制与错误处理
  • WPF基于LiveCharts2图形库,实现:折线图,柱状图,饼状图
  • 03. 协程入门_Android异步处理机制
  • 系统架构设计师备考第7天——网络协议中间件软件构件