Atlas 项目使用教程
atlas A modern tool for managing database schemas 项目地址: https://gitcode.com/gh_mirrors/atlas2/atlas
1. 项目介绍
Atlas 是一个语言无关的工具,用于使用现代 DevOps 原则管理和迁移数据库模式。它提供了两种工作流程:
- 声明式:类似于 Terraform,Atlas 比较数据库的当前状态与期望状态(在 HCL、SQL 或 ORM 模式中定义),并生成和执行迁移计划以将数据库过渡到期望状态。
- 版本化:与其他工具不同,Atlas 自动为用户规划模式迁移。用户可以使用 HCL、SQL 或他们选择的 ORM 描述他们期望的数据库模式,并通过使用 Atlas 计划、检查和应用必要的迁移到数据库。
2. 项目快速启动
安装 Atlas
Atlas 支持多种安装方式,以下是几种常见的安装方法:
macOS + Linux
curl -sSf https://atlasgo.sh | sh
Homebrew
brew install ariga/tap/atlas
Docker
docker pull arigaio/atlas
NPM
npx @ariga/atlas
快速启动示例
以下是一个简单的示例,展示如何使用 Atlas 检查数据库模式并生成迁移计划。
检查数据库模式
atlas schema inspect -u "mysql://root:pass@localhost:3306/example" > schema.hcl
生成迁移计划
atlas schema diff \
--from mysql://root:pass@:3306/db1 \
--to mysql://root:pass@:3306/db2
应用迁移
atlas schema apply \
--url mysql://root:pass@:3306/db1 \
--to file://schema.hcl \
--dev-url docker://mysql/8/db1
3. 应用案例和最佳实践
应用案例
Atlas 可以广泛应用于以下场景:
- 数据库模式管理:在开发和生产环境中管理数据库模式的变化。
- CI/CD 集成:将数据库模式管理集成到 CI/CD 管道中,确保数据库模式的一致性和可重复性。
- 多租户数据库:支持多租户数据库模式的管理和迁移。
最佳实践
- 使用版本控制:将数据库模式文件和迁移脚本纳入版本控制系统,确保所有变更可追溯。
- 定期审查迁移计划:在应用迁移之前,定期审查生成的迁移计划,确保其符合预期。
- 备份数据库:在应用迁移之前,确保数据库已备份,以防止意外情况。
4. 典型生态项目
Atlas 可以与其他数据库工具和平台集成,以下是一些典型的生态项目:
- Terraform:Atlas 支持将数据库变更作为 Terraform 部署工作流程的一部分。
- Docker:通过 Docker 容器快速启动和测试数据库环境。
- ORM 框架:支持多种 ORM 框架,如 GORM、Ent 等,简化数据库模式的管理。
通过这些集成,Atlas 可以更好地满足复杂的数据库管理需求,提高开发和运维效率。
atlas A modern tool for managing database schemas 项目地址: https://gitcode.com/gh_mirrors/atlas2/atlas
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考