优化更新
This commit is contained in:
@@ -180,12 +180,12 @@ pip install -r requirements.txt
|
||||
# 干跑:核对源库表和行数
|
||||
python scripts/migrate_db.py --dry-run \
|
||||
--src-driver=mysql --src-host=127.0.0.1 --src-port=3306 \
|
||||
--src-user=root --src-pass=root --src-db=djangoadmin.flask.elevue
|
||||
--src-user=root --src-pass=root --src-db=djangoadmin.flask.antdvue
|
||||
|
||||
# 或使用 Make 命令
|
||||
make db-migrate-dry-run ARGS="\
|
||||
--src-driver=mysql --src-host=127.0.0.1 --src-port=3306 \
|
||||
--src-user=root --src-pass=root --src-db=djangoadmin.flask.elevue"
|
||||
--src-user=root --src-pass=root --src-db=djangoadmin.flask.antdvue"
|
||||
```
|
||||
|
||||
### MySQL → PostgreSQL
|
||||
@@ -193,9 +193,9 @@ make db-migrate-dry-run ARGS="\
|
||||
```bash
|
||||
python scripts/migrate_db.py \
|
||||
--src-driver=mysql --src-host=127.0.0.1 --src-port=3306 \
|
||||
--src-db=djangoadmin.flask.elevue --src-user=root --src-pass=root \
|
||||
--src-db=djangoadmin.flask.antdvue --src-user=root --src-pass=root \
|
||||
--dst-driver=postgresql --dst-host=localhost --dst-port=5432 \
|
||||
--dst-db=djangoadmin.flask.elevue --dst-user=postgres --dst-pass=你的密码 \
|
||||
--dst-db=djangoadmin.flask.antdvue --dst-user=postgres --dst-pass=你的密码 \
|
||||
--drop-target-first
|
||||
```
|
||||
|
||||
@@ -203,12 +203,12 @@ python scripts/migrate_db.py \
|
||||
|
||||
```
|
||||
==============================================================
|
||||
[迁移开始] 源: mysql:djangoadmin.flask.elevue → 目标: postgresql:djangoadmin.flask.elevue
|
||||
[迁移开始] 源: mysql:djangoadmin.flask.antdvue → 目标: postgresql:djangoadmin.flask.antdvue
|
||||
[迁移开始] 待迁移 23 张表
|
||||
==============================================================
|
||||
[·] [1/5] 建目标库...
|
||||
· 正在连接 postgres 维护库...
|
||||
· 正在创建目标库 "djangoadmin.flask.elevue"(UTF8)...
|
||||
· 正在创建目标库 "djangoadmin.flask.antdvue"(UTF8)...
|
||||
[✓] [1/5] 建目标库 完成(耗时 947ms)
|
||||
[·] [2/5] 建表结构(23 张表 create_all)...
|
||||
[✓] [2/5] 建表结构 完成(耗时 1.1s),23 张表
|
||||
@@ -241,9 +241,9 @@ python scripts/migrate_db.py \
|
||||
```bash
|
||||
python scripts/migrate_db.py \
|
||||
--src-driver=mysql --src-host=127.0.0.1 --src-port=3306 \
|
||||
--src-db=djangoadmin.flask.elevue --src-user=root --src-pass=root \
|
||||
--src-db=djangoadmin.flask.antdvue --src-user=root --src-pass=root \
|
||||
--dst-driver=mssql --dst-host=localhost --dst-port=1433 \
|
||||
--dst-db=djangoadmin.flask.elevue --dst-user=sa --dst-pass=你的密码 \
|
||||
--dst-db=djangoadmin.flask.antdvue --dst-user=sa --dst-pass=你的密码 \
|
||||
--drop-target-first
|
||||
```
|
||||
|
||||
@@ -256,8 +256,8 @@ python scripts/migrate_db.py \
|
||||
```bash
|
||||
python scripts/migrate_db.py \
|
||||
--src-driver=mysql --src-host=127.0.0.1 --src-port=3306 \
|
||||
--src-db=djangoadmin.flask.elevue --src-user=root --src-pass=root \
|
||||
--dst-driver=sqlite --dst-db=D:/data/djangoadmin.flask.elevue.db \
|
||||
--src-db=djangoadmin.flask.antdvue --src-user=root --src-pass=root \
|
||||
--dst-driver=sqlite --dst-db=D:/data/djangoadmin.flask.antdvue.db \
|
||||
--drop-target-first
|
||||
```
|
||||
|
||||
@@ -272,7 +272,7 @@ python scripts/migrate_db.py \
|
||||
```bash
|
||||
python scripts/migrate_db.py \
|
||||
--src-driver=mysql --src-host=127.0.0.1 --src-port=3306 \
|
||||
--src-db=djangoadmin.flask.elevue --src-user=root --src-pass=root \
|
||||
--src-db=djangoadmin.flask.antdvue --src-user=root --src-pass=root \
|
||||
--dst-driver=oracle --dst-host=localhost --dst-port=1521 \
|
||||
--dst-db=ORCLPDB1 --dst-user=flask --dst-pass=你的密码 \
|
||||
--drop-target-first
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
**数据库**:
|
||||
|
||||
- [ ] 安装 MySQL 8.0+
|
||||
- [ ] 创建数据库:`CREATE DATABASE djangoadmin.flask.elevue DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;`
|
||||
- [ ] 创建数据库:`CREATE DATABASE djangoadmin.flask.antdvue DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;`
|
||||
- [ ] 创建数据库用户并授权
|
||||
- [ ] 修改 `.env` 中的数据库配置
|
||||
- [ ] 初始化数据库:`python scripts/setup_db.py`
|
||||
@@ -138,7 +138,7 @@ server {
|
||||
|
||||
### 数据库迁移
|
||||
|
||||
- [ ] 备份数据库:`mysqldump -uroot -p djangoadmin.flask.elevue > backup.sql`
|
||||
- [ ] 备份数据库:`mysqldump -uroot -p djangoadmin.flask.antdvue > backup.sql`
|
||||
- [ ] 执行迁移:`flask db upgrade`
|
||||
- [ ] 验证迁移结果
|
||||
|
||||
@@ -198,7 +198,7 @@ cp -r /opt/backup/dist /opt/project/ui/dist
|
||||
|
||||
```bash
|
||||
# 从备份恢复
|
||||
mysql -uroot -p djangoadmin.flask.elevue < backup.sql
|
||||
mysql -uroot -p djangoadmin.flask.antdvue < backup.sql
|
||||
```
|
||||
|
||||
## 总结
|
||||
|
||||
@@ -58,9 +58,9 @@ Dockerfile 将 `requirements.txt` 和源码分两步 COPY,利用 Docker 层缓
|
||||
version: '3.7'
|
||||
|
||||
services:
|
||||
flask_elevue: # 服务名称
|
||||
image: flask_elevue # 镜像名称
|
||||
container_name: flask_elevue # 容器名称
|
||||
flask_antdvue: # 服务名称
|
||||
image: flask_antdvue # 镜像名称
|
||||
container_name: flask_antdvue # 容器名称
|
||||
build: # 构建配置
|
||||
context: ./ # 构建上下文路径
|
||||
dockerfile: Dockerfile # Dockerfile 文件名
|
||||
@@ -116,26 +116,26 @@ docker-compose build
|
||||
docker-compose ps
|
||||
|
||||
# 查看日志
|
||||
docker-compose logs -f flask_elevue
|
||||
docker-compose logs -f flask_antdvue
|
||||
|
||||
# 停止服务
|
||||
docker-compose down
|
||||
|
||||
# 重启服务
|
||||
docker-compose restart flask_elevue
|
||||
docker-compose restart flask_antdvue
|
||||
|
||||
# 进入容器
|
||||
docker exec -it flask_elevue bash
|
||||
docker exec -it flask_antdvue bash
|
||||
```
|
||||
|
||||
### 查看容器资源
|
||||
|
||||
```bash
|
||||
# 查看容器资源占用
|
||||
docker stats flask_elevue
|
||||
docker stats flask_antdvue
|
||||
|
||||
# 查看容器日志大小
|
||||
docker inspect --format='{{.LogPath}}' flask_elevue
|
||||
docker inspect --format='{{.LogPath}}' flask_antdvue
|
||||
```
|
||||
|
||||
## 环境变量注入
|
||||
@@ -187,7 +187,7 @@ logging:
|
||||
|
||||
```yaml
|
||||
services:
|
||||
flask_elevue:
|
||||
flask_antdvue:
|
||||
# ... 后端配置 ...
|
||||
|
||||
nginx:
|
||||
@@ -199,7 +199,7 @@ services:
|
||||
- ./nginx.conf:/etc/nginx/conf.d/default.conf # Nginx 配置文件
|
||||
- ./dist:/usr/share/nginx/html # 前端构建产物
|
||||
depends_on: # 依赖服务
|
||||
- flask_elevue # 等待后端服务启动
|
||||
- flask_antdvue # 等待后端服务启动
|
||||
```
|
||||
|
||||
## 总结
|
||||
|
||||
@@ -130,18 +130,18 @@ long_query_time = 2
|
||||
mysql -uroot -p
|
||||
|
||||
-- 创建数据库
|
||||
CREATE DATABASE `djangoadmin.flask.elevue`
|
||||
CREATE DATABASE `djangoadmin.flask.antdvue`
|
||||
DEFAULT CHARACTER SET utf8mb4
|
||||
COLLATE utf8mb4_general_ci;
|
||||
|
||||
-- 创建专用用户(生产环境不要用 root)
|
||||
CREATE USER 'flask_user'@'localhost' IDENTIFIED BY 'YourStrongPassword123!';
|
||||
GRANT ALL PRIVILEGES ON `djangoadmin.flask.elevue`.* TO 'flask_user'@'localhost';
|
||||
GRANT ALL PRIVILEGES ON `djangoadmin.flask.antdvue`.* TO 'flask_user'@'localhost';
|
||||
FLUSH PRIVILEGES;
|
||||
|
||||
-- 导入数据
|
||||
USE `djangoadmin.flask.elevue`;
|
||||
SOURCE /opt/project/document/mysql/djangoadmin.flask.elevue.sql;
|
||||
USE `djangoadmin.flask.antdvue`;
|
||||
SOURCE /opt/project/document/mysql/djangoadmin.flask.antdvue.sql;
|
||||
```
|
||||
|
||||
## Redis 配置
|
||||
@@ -394,7 +394,7 @@ FLASK_DEBUG=false
|
||||
DB_HOST=127.0.0.1
|
||||
DB_PORT=3306
|
||||
DB_DRIVER=mysql
|
||||
DB_DATABASE=djangoadmin.flask.elevue
|
||||
DB_DATABASE=djangoadmin.flask.antdvue
|
||||
DB_USERNAME=flask_user
|
||||
DB_PASSWORD=YourStrongPassword123!
|
||||
|
||||
|
||||
@@ -249,10 +249,10 @@ python -m memory_profiler app.py
|
||||
|
||||
```bash
|
||||
# 1. 查看容器日志
|
||||
docker-compose logs flask_elevue
|
||||
docker-compose logs flask_antdvue
|
||||
|
||||
# 2. 进入容器调试
|
||||
docker run -it --rm flask_elevue bash
|
||||
docker run -it --rm flask_antdvue bash
|
||||
|
||||
# 3. 检查 .env 文件
|
||||
cat .env
|
||||
|
||||
Reference in New Issue
Block a user