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

Ubuntu操作便捷的系统下运用mysql、mongodb、redis

MySQL(关系型数据库)、MongoDB(文档型 NoSQL)、Redis(内存数据库)是最常用的三大工具。本文基于 Ubuntu 操作系统,梳理三者的核心知识点、安装配置、基础操作及运维要点,帮助开发者快速上手并规避常见问题。

目录

一、Ubuntu 环境准备

1. 系统更新

2. 权限说明

二、MySQL 核心知识点与实战

1. 安装与初始化

(1)安装 MySQL 服务

(2)安全初始化

(3)登录 MySQL

2. 核心配置

允许远程连接(可选)

3. 基础操作(SQL 命令)

4. 服务管理

三、mongodb 核心知识点与实战

1. 安装与初始化

(1)添加官方源(避免 apt 源版本过旧)

(2)启动服务并设置自启

2. 核心配置

3. 用户认证与权限

(1)创建管理员用户

(2)登录与创建普通用户

4. 基础操作(mongosh 命令)

四、redis 核心知识点与实战

1. 安装与初始化

(1)安装 redis

(2)验证安装

2. 核心配置

允许远程连接(可选)

3. 基础操作(redis-cli 命令)

4. 服务管理

五、三大数据库对比与适用场景


一、Ubuntu 环境准备

1. 系统更新

操作前先更新软件包索引,确保依赖最新:

2. 权限说明

本文所有命令默认以 sudo 权限执行(普通用户需添加 sudo),避免权限不足导致操作失败。

二、MySQL 核心知识点与实战

MySQL 是开源关系型数据库,适用于结构化数据存储(如用户信息、订单数据),遵循 ACID 特性,支持 SQL 语法。

1. 安装与初始化

(1)安装 MySQL 服务

sudo apt install mysql-server -y

(2)安全初始化

执行官方安全脚本,设置 root 密码、删除匿名用户、禁用远程 root 登录:

sudo mysql_secure_installation

按提示操作:

选择密码验证策略(推荐 0 低策略,便于测试;生产环境选 2 高策略);

设置 root 密码(记牢,后续登录用);

依次输入 Y 确认删除匿名用户、禁用远程 root、删除测试库、刷新权限。

(3)登录 MySQL
# 本地登录(root 用户)
sudo mysql -u root -p
# 输入步骤 2 设置的密码,成功进入 MySQL 命令行(提示符:mysql>)

2. 核心配置

允许远程连接(可选)

默认 MySQL 仅监听本地 127.0.0.1,如需远程访问:

,1,编辑配置文件:

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

2,注释或修改 bind-address

# bind-address = 127.0.0.1  # 注释掉,允许所有 IP 访问
bind-address = 0.0.0.0       # 或指定允许的远程 IP

3,重启服务:

sudo systemctl restart mysql

4,授权远程用户(MySQL 命令行执行):

# 授权 root 用户从任意 IP 登录
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '你的密码' WITH GRANT OPTION;
# 刷新权限
FLUSH PRIVILEGES;

3. 基础操作(SQL 命令)

操作目标命令示例
创建数据库create database test_db default charset utf8mb4;
使用数据库use test_db;
创建表create table user (id int primary key auto_increment, name varchar(20));
插入数据insert into user (name) values ('张三'), ('李四');
查询数据select * from user;
退出 mysqlexit; 或 \q

4. 服务管理

# 查看状态
sudo systemctl status mysql
# 启动/停止/重启
sudo systemctl start/stop/restart mysql
# 设置开机自启
sudo systemctl enable mysql

三、mongodb 核心知识点与实战

mongodb 是文档型 nosql 数据库,以 bson(类 json)格式存储数据,适用于非结构化 / 半结构化数据(如日志、用户画像),支持灵活的查询与分布式扩展。

1. 安装与初始化

(1)添加官方源(避免 apt 源版本过旧)
# 导入 GPG 密钥
curl -fsSL https://www.mongodb.org/static/pgp/server-7.0.asc | sudo gpg --dearmor -o /usr/share/keyrings/mongodb-server-7.0.gpg
# 添加软件源
echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list
# 更新并安装
sudo apt update && sudo apt install mongodb-org -y
(2)启动服务并设置自启
sudo systemctl start mongod
sudo systemctl enable mongod
# 验证状态(出现 active (running) 即正常)
sudo systemctl status mongod

2. 核心配置

mongodb 配置文件,关键配置项:

net:
bindIp: 127.0.0.1  # 监听 IP,远程访问改 0.0.0.0
port: 27017        # 默认端口
security:
authorization: enabled  # 启用用户认证(默认关闭)

修改后需重启服务:sudo systemctl restart mongod

3. 用户认证与权限

(1)创建管理员用户
  1. 未启用认证时登录:
    mongosh  # 直接进入(默认无密码)
  2. 切换到 admin 数据库,创建超级管理员:
    use admin;
    db.createUser({
    user: "admin",        // 用户名
    pwd: "你的强密码",    // 密码
    roles: [{ role: "root", db: "admin" }]  // 超级权限
    });
  3. 启用认证(修改 mongod.conf 中 authorization: enabled),重启服务。
(2)登录与创建普通用户
# 用管理员账号登录
mongosh -u admin -p 你的密码 --authenticationDatabase admin
# 切换到目标数据库(如 test_db),创建普通用户(读写权限)
use test_db;
db.createUser({
user: "test_user",
pwd: "test_pass",
roles: [{ role: "readWrite", db: "test_db" }]
});

4. 基础操作(mongosh 命令)

操作目标命令示例
查看所有数据库show dbs;
创建 / 切换数据库use test_db; (插入数据后自动创建)
创建集合(表)db.createCollection("user");
插入文档(数据)db.user.insertOne({ name: "张三", age: 25 });
查询文档db.user.find(); (查询所有)/ db.user.find({ age: 25 });(条件查询)
删除文档db.user.deleteOne({ name: "张三" });
退出 mongoshexit

四、redis 核心知识点与实战

redis 是高性能内存数据库,支持键值对存储,常用于缓存、会话存储、消息队列,数据读写速度达 10 万次 / 秒级别。

1. 安装与初始化

(1)安装 redis
sudo apt install redis-server -y
(2)验证安装
# 启动 redis 客户端
redis-cli
# 执行 ping 命令,返回 PONG 即正常
127.0.0.1:6379> ping
PONG

2. 核心配置

允许远程连接(可选)

默认 redis 仅监听 127.0.0.1,远程访问需修改:

  1. 编辑配置文件:
    sudo nano /etc/redis/redis.conf
  2. 修改关键配置:
    bind 0.0.0.0          # 允许所有 IP 访问(生产限制 IP)
    protected-mode no     # 关闭保护模式(否则远程无法连接)
    requirepass 你的密码  # 设置密码(避免未授权访问)
  3. 重启服务:
    sudo systemctl restart redis-server

3. 基础操作(redis-cli 命令)

操作目标命令示例
登录(带密码)redis-cli -u redis://:你的密码@127.0.0.1:6379 或登录后 AUTH 你的密码
存储键值对(字符串)set name "张三"
获取值get name (返回 "张三")
存储哈希(对象)hset user:1 name "李四" age 30
获取哈希值hgetall user:1 (返回所有字段和值)
查看所有键keys *
退出客户端exit 或 quit

4. 服务管理

# 查看状态
sudo systemctl status redis-server
# 启动/停止/重启
sudo systemctl start/stop/restart redis-server
# 设置开机自启
sudo systemctl enable redis-server

五、三大数据库对比与适用场景

特性mysqlmongodbredis
数据模型关系型(表结构)文档型(bson)键值对(多种结构)
适用数据结构化、强关联数据非结构化、半结构化缓存、会话、计数器
读写性能中(磁盘 io)高(内存 + 磁盘)极高(纯内存)
事务支持完整 acid单文档 acid部分支持(redis 6.0+)
典型场景订单系统、用户管理日志存储、内容管理缓存加速、秒杀计数

通过本文,你可以快速掌握 ubuntu 下三大数据库的核心用法。实际开发中,需根据业务场景选择合适的工具(如用 redis 做缓存、mysql 存业务数据、mongodb 存非结构化日志),并做好权限控制与数据备份,保障系统稳定运行。

http://www.hskmm.com/?act=detail&tid=12219

相关文章:

  • 03_Angular的突破性优势
  • 02_Angular现代前端框架的选型逻辑
  • 01_Angular时代的前端开发变革
  • 一堆杂题混刷
  • QQ 陌生人点赞 功能存在隐私泄露风险
  • Python爬虫实战——使用NetNut网页解锁器获取亚马逊电商资料
  • 2025 CCPC 网络赛
  • 安装windows11跳过账户登录
  • TCM安全学院夏季大促与免费网络安全课程发布
  • 博客园插入bilibili视频
  • 软件工程第一次编程作业
  • WO Mic - 免费麦克风
  • AudioRelay —— 让电脑使用手机的麦克风和扬声器
  • 【小白学算法】矩阵快速幂超详细解析+例题[HDU - 2802]
  • lyms 的神秘歌单
  • 大学园区二手书交易强大的平台(代码+数据库+LW)
  • webRTC入门
  • Element UI框架中自定义input组件的placeholder样式
  • 【C++】类与结构体的区别
  • Linux云端服务器上部署Spring Boot应用
  • HTML表单验证:确认input元素输入为具有特定整数和小数位数的数值
  • 课前问题思考3
  • 在CentOS上配置SVN至Web目录的自动同步
  • AIGC在游戏开发中的革命性影响:从生产效率到体验创新 - 详解
  • 使用Docker配置并连接HBase的Java API
  • 在Linux环境下安装和卸载DMETL5数据迁移工具
  • 赛前训练3 欧拉路
  • SQL小贴式: 用NOT EXISTS 而不是 NOT IN !!!
  • 手撕大模型|FlashAttention 原理及代码解析
  • react工程化