Docker 笔记 - 部署数据库

本文详细介绍如何使用Docker部署MySQL、SqlServer、PostgreSQL和Oracle四种主流数据库。包括拉取镜像、配置容器、设置参数及挂载数据卷等关键步骤。


部署MySQL

拉取 MySQL 最新版本镜像

docker pull mysql

生成 MySQL 容器


# 如果在Windows下,-e里面的 ' 要替换成 " (单引号变成双引号)

# 挂载到宿主机 ~/data/mysql ,服务端口 3306
mkdir -p ~/data/mysql/data ~/data/mysql/conf

docker run -d --name mysql8 -p 3306:3306 \
	-v ~/data/mysql/data:/var/lib/mysql \
	-v ~/data/mysql/conf:/etc/mysql/conf.d \
	-e MYSQL_ROOT_PASSWORD='MySql#123' -d  mysql


部署 SqlServer

拉取 SqlServer 镜像

docker pull mcr.microsoft.com/mssql/server:2017-latest

生成 SqlServer 容器


# 挂载到宿主机 ~/data/sqlserver ,服务端口 14330
mkdir -p ~/data/sqlserver/data

docker run -d -e 'ACCEPT_EULA=Y' -e  'SA_PASSWORD=123456aA#!' \
	-p 14330:1433 \
	-v ~/data/sqlserver/data:/var/opt/mssql/data \
	--name sqlserver17 \
	mcr.microsoft.com/mssql/server:2017-latest

# 注意:客户端连接时端口的使用 格式为:IP,端口 (ip和port之间为,不是:)

部署 PostgreSQL

拉取 Postgres 镜像

docker pull postgres

生成 Postgres 容器


# 挂载到宿主机 ~/data/postgresql , 服务端口5432

makedir ~/data/postgresql/data

docker run -d -p \
	--name postgres \
	-v ~/data/postgresql/data/:/var/lib/postgresql/data \
	-e POSTGRES_PASSWORD='PGsql#123' \
	postgres

部署 Oracle

拉取 Oracle 镜像

docker pull quay.io/maksymbilenko/oracle-12c
可惜磁盘空间不够了,没有安装完成。
换了一个 truevoly/oracle-12c 镜像,是从这个镜像复制而来,体积小了1G左右
还有一个 sath89/oracle-12c (已下架)复制镜像 kutsyy/oracle-12c
以上两个镜像从下载信息列表中看应该区别不大(前8个ID是一样的), 可能跟我的仓库源有关,这两个镜像下载速度非常慢

使用方法可查看https://github.com/MaksymBilenko/docker-oracle-12c

生成 Oracle 容器


# 挂载到宿主机 ~/data/oracle/data 端口 18080 11521
# 默认信息 sid:xe, service name:xe,username:system,password:oracle
docker run -d -p 18080:8080 -p 11521:1521 \
	-v ~/data/oracle/data:/u01/app/oracle \
	quay.io/maksymbilenko/oracle-12c
# 或
docker run -d -p 18080:8080 -p 11521:1521 \
	-v ~/data/oracle/data:/u01/app/oracle \
	 truevoly/oracle-12c
<think>我们正在回答用户的问题:如何在笔记本电脑上部署数据库以及推荐适合的可视化工具步骤:1.部署数据库:选择一种数据库(如SQLite,MySQL,PostgreSQL等),然后进行安装配置。2.推荐可视化工具:根据数据库类型推荐可视化工具。考虑到用户是在笔记本电脑上部署,可能希望轻量级且易于安装使用的方案。常见数据库部署-SQLite:无需服务器,单文件数据库,适合轻量级应用。-MySQL:需要安装服务器,配置稍复杂,但功能强大。-PostgreSQL:类似MySQL,但更注重标准性功能丰富性。可视化工具推荐:根据用中提到的工具,我们可以参考:用[2]提到了Zeppelin,它是一个交互数据分析的Notebook工具,支持多种数据库(包括MySQLpostgresql、JDBC等)。用[3]提到了RedisInsight(针对Redis)Iedis2(也是Redis工具),但用户没有特别说明是Redis,所以可能不适用。用[1]提到了PowerBI,它是一个强大的数据可视化工具,可以连接多种数据源。此外,我们还可以推荐其他常用数据库可视化工具,如:-DBeaver:免费、开源、支持多种数据库MySQL,PostgreSQL,SQLite等)。-Tableau:功能强大但商业软件,有免费试用版。-MySQLWorkbench:专门用于MySQL-pgAdmin:专门用于PostgreSQL-SQLiteStudio:专门用于SQLite。因此,我们可以这样回答:部署步骤:1.选择数据库:根据需求选择,例如轻量级选择SQLite,需要更强大功能选择MySQLPostgreSQL。2.下载安装:从官网下载安装包进行安装。3.配置:根据安装向导进行配置(对于SQLite,无需配置;对于MySQL/PostgreSQL,需要设置用户名密码等)。4.启动服务:对于需要服务的数据库(如MySQL),启动数据库服务。可视化工具推荐:根据数据库类型选择:-通用型(支持多种数据库):DBeaver、PowerBI(更偏向数据分析可视化)、Zeppelin(交互式笔记本,适合数据分析)。-特定数据库MySQLWorkbench(MySQL)、pgAdmin(PostgreSQL)、SQLiteStudio(SQLite)。注意:用中提到的PowerBIZeppelin都是功能强大的工具,但侧重点不同。PowerBI适合创建交互式报告,而Zeppelin适合编写包含代码、文本可视化的笔记本。因此,我们可以这样组织回答:</think>### 如何在笔记本电脑上部署数据库及推荐可视化工具 #### **数据库部署步骤** 1. **选择数据库类型** - 轻量级:SQLite(单文件数据库,无需安装服务) - 通用型:MySQL/PostgreSQL(需安装服务端) - 内存型:Redis(适合高速缓存场景) 2. **安装数据库** - **SQLite**:直接下载预编译二进制文件[^1],或通过包管理器安装: ```bash # macOS/Linux sudo apt-get install sqlite3 # Windows:官网下载 sqlite-tools-win32-*.zip ``` - **MySQL/PostgreSQL**: - 官网下载安装包,按向导完成安装 - 或使用 Docker 快速部署(示例): ```bash docker run -d --name mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 mysql:latest ``` 3. **基础配置** - 创建数据库用户权限(以 MySQL 为例): ```sql CREATE DATABASE mydb; GRANT ALL PRIVILEGES ON mydb.* TO 'user'@'localhost' IDENTIFIED BY 'password'; ``` --- #### **可视化工具推荐** 根据数据库类型选择工具: | 数据库 | 推荐工具 | 特点 | |--------------|-----------------------------------|----------------------------------------------------------------------| | **通用型**<br>(MySQL/PostgreSQL) | **DBeaver** | 免费开源,支持 80+ 数据库,直观的 ER 图表数据编辑 [^1] | | | **Power BI** | 微软出品,支持复杂数据转换交互式仪表盘(需 Windows)[^1] | | **SQLite** | **DB Browser for SQLite** | 轻量级专用工具,提供表设计、SQL 编辑数据预览 | | **Redis** | **RedisInsight** | 官方工具,支持监控、内存分析集群管理(覆盖全面)[^3] | | **交互分析** | **Apache Zeppelin** | Notebook 模式,支持混合语言查询(SQL/Python/Scala)[^2] | > ✅ **选择建议**: > - 开发调试:DBeaver(多数据库支持) > - 数据分析:Power BI(交互式报告) > - 内存数据库:RedisInsight(深度监控) --- #### **操作示例:DBeaver 连接 MySQL** 1. 下载安装 [DBeaver 社区版](https://dbeaver.io/) 2. 新建连接 → 选择 MySQL → 填写主机、数据库名、账号密码 3. 右键点击表 → "查看数据" 可编辑查询结果 4. 使用 "ER Diagram" 生成数据库关系图: ![ER 图示例](https://dbeaver.com/docs/wiki/images/erd-view.png) --- ### 相关问题 1. 如何优化笔记本电脑上数据库的性能? 2. 使用 Docker 部署数据库有哪些最佳实践? 3. 除了可视化工具,如何通过命令行高效管理数据库? [^1]: 支持连接本地/远程数据库,支持生成交互式报告。 [^2]: 可通过 JDBC 连接主流数据库,适合数据分析场景。 [^3]: 提供内存占用分析慢查询日志,优化 Redis 性能。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值