Ubuntu操作系统下使用mysql、mongodb、redis

前言

在 Ubuntu 操作系统下使用 MySQL、MongoDB 和 Redis 是非常常见的开发环境配置。

Ubuntu下使用MySQL好处

  • 稳定性与兼容性强:MySQL 与 Ubuntu 的兼容性经过长期验证,官方提供了完善的 APT 包支持,通过apt命令可快速安装、更新和卸载,配置简单,系统级集成度高。
  • 资源控制便捷:Ubuntu 的用户权限管理(如root与普通用户隔离)可与 MySQL 的权限系统结合,通过apparmor等工具限制 MySQL 进程的资源访问,增强安全性。
  • 性能优化友好:Ubuntu 的内核调优(如内存管理、IO 调度)可与 MySQL 的配置(如my.cnf中的缓存设置、连接数限制)配合,在服务器环境中发挥更好的性能。
  • 生态工具丰富:Ubuntu 上可便捷安装 MySQL 的配套工具(如mysql-workbenchphpmyadmin),同时支持与 Python、Java 等语言的开发环境无缝集成,适合 Web 应用、企业级数据存储等场景。

Ubuntu下使用MongoDB好处

  • 适合 Linux 的分布式特性:MongoDB 的分片、副本集等分布式功能在 Ubuntu 服务器集群中部署便捷,可利用 Ubuntu 的systemd进行服务管理,确保高可用。
  • 高效的资源利用:Ubuntu 的轻量级特性(相比 Windows)能减少系统资源占用,让 MongoDB 更高效地使用内存和磁盘 IO,尤其适合处理海量非结构化数据(如日志、文档)。
  • 社区支持完善:MongoDB 官方为 Ubuntu 提供了专用的 APT 源,更新及时,且 Ubuntu 用户群体庞大,遇到问题时容易找到基于 Linux 环境的解决方案。
  • 开发与部署流程顺畅:在 Ubuntu 的开发环境中,可通过docker快速部署 MongoDB 容器,配合gitCI/CD工具实现自动化部署,适合敏捷开发。

Ubuntu下使用Redis的好处

  • 极致性能发挥:Redis 作为内存数据库,对系统的 IO 和内存响应速度要求高。Ubuntu 的内核优化(如禁用 swap、调整内存分配策略)可减少 Redis 的性能损耗,提升读写速度。
  • 服务管理便捷:通过 Ubuntu 的systemd可轻松设置 Redis 开机自启、进程监控和日志管理,配合redis-cli命令行工具,运维效率高。
  • 安全性增强:Ubuntu 的防火墙(ufw)可限制 Redis 端口的访问,结合 Redis 的密码认证和bind配置,能有效防止未授权访问(尤其在公网环境中)。
  • 多场景适配性:在 Ubuntu 上,Redis 可无缝对接 Web 服务器(如 Nginx)、消息队列(如 RabbitMQ)和编程语言(如 Node.js、Go),适合作为缓存、会话存储、实时计数器等场景的支撑。

MySQL使用

安装 MySQL Server

Ubuntu 的官方仓库提供了 MySQL 的默认版本。要安装它,请运行:

bash

sudo apt install mysql-server -y
安全配置(重要!)

安装后,运行安全安装脚本以设置 root 密码并移除一些不安全的默认设置。

bash

sudo mysql_secure_installation

系统会引导您完成以下步骤:

  1. 设置验证密码插件(用于验证密码强度)。

  2. 为 MySQL root 用户设置密码。

  3. 移除匿名用户。

  4. 禁止远程 root 登录(通常更安全)。

  5. 移除测试数据库。

  6. 重新加载权限表使更改生效。

连接到 MySQL

使用 root 用户和您刚设置的密码登录 MySQL 控制台:

bash

sudo mysql -u root -p

基础MySQL命令

        

-- 显示所有数据库
SHOW DATABASES;

-- 创建一个新数据库
CREATE DATABASE mydatabase;

-- 使用某个数据库
USE mydatabase;

-- 创建表
CREATE TABLE users (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), email VARCHAR(255));

-- 插入数据
INSERT INTO users (name, email) VALUES ('John Doe', 'john@example.com');

-- 查询数据
SELECT * FROM users;

-- 退出 MySQL 控制台
EXIT;

使用MongoDB

MongoDB 官方建议使用其提供的仓库来安装最新版本,而不是使用 Ubuntu 的默认仓库。

导入 MongoDB 公钥

wget -qO - https://www.mongodb.org/static/pgp/server-7.0.asc | sudo apt-key add -

注意:如果 apt-key 命令已弃用,请使用以下方式:

sudo apt-get install gnupg
wget -qO - https://www.mongodb.org/static/pgp/server-7.0.asc | sudo gpg --dearmor -o /usr/share/keyrings/mongodb-archive-keyring.gpg

创建 MongoDB 仓库列表文件

echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-archive-keyring.gpg ] https://repo.mongodb.org/apt/ubuntu $(lsb_release -cs)/mongodb-org/7.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list

安装 MongoDB

sudo apt update
sudo apt install mongodb-org -y

启动和启用 MongoDB 服务

安装后,启动 MongoDB 服务并设置为开机自启。

sudo systemctl start mongod
sudo systemctl enable mongod
sudo systemctl status mongod # 检查服务状态

连接到 MongoDB

使用 mongosh 命令连接到本地的 MongoDB 实例:

mongosh

基础MongoDB操作

// 显示所有数据库
show dbs

// 使用/创建一个数据库 (如果数据库不存在,插入第一条数据时才会真正创建)
use mymongodb

// 在 `users` 集合中插入一个文档(类似 SQL 的表)
db.users.insertOne({name: "Alice", age: 30, city: "New York"})

// 查询 `users` 集合中的所有文档
db.users.find()

// 带条件的查询
db.users.find({age: {$gt: 25}}) // 查找年龄大于 25 的用户

// 退出 MongoDB Shell
exit

Redis的使用

安装 Redis Server

Redis 在 Ubuntu 默认仓库中可用。

bash

sudo apt install redis-server -y

配置 Redis(可选但推荐)

主要的配置文件是 /etc/redis/redis.conf。您可能需要编辑它以进行一些基本调整,例如绑定地址或设置密码。

设置密码(增强安全性):

  1. 编辑配置文件:

    sudo nano /etc/redis/redis.conf
  2. 找到 # requirepass foobared 这一行,取消注释并将 foobared 替换为您自己的强密码。

    requirepass your_strong_password_here
  3. 保存文件并重启 Redis 服务。

    sudo systemctl restart redis-server

启动和启用 Redis 服务

Redis 在安装后通常会自动启动。您可以检查并确保它开机自启。

sudo systemctl start redis-server
sudo systemctl enable redis-server
sudo systemctl status redis-server # 检查服务状态

连接到 Redis

使用 redis-cli 命令行工具与 Redis 交互。

# 如果没设置密码,直接连接
redis-cli

# 如果设置了密码,使用 -a 参数连接
redis-cli -a your_strong_password_here

# 或者在连接后使用 AUTH 命令
redis-cli
127.0.0.1:6379> AUTH your_strong_password_here
OK

基本Redis指令

# 设置一个键值对
SET mykey "Hello World"

# 获取一个键的值
GET mykey

# 设置一个有过期时间(10秒)的键
SET tempkey "I will expire" EX 10

# 检查键是否存在
EXISTS mykey

# 列出所有键(生产环境慎用)
KEYS *

# 使用哈希(Hash)类型
HSET user:1000 name "Bob" age 25
HGETALL user:1000

# 退出 Redis CLI
QUIT

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值