优化更新
This commit is contained in:
@@ -18,11 +18,11 @@
|
||||
# 使用 mysqldump 备份单个数据库
|
||||
mysqldump -h 127.0.0.1 -u root -p --single-transaction \
|
||||
--routines --triggers --events \
|
||||
djangoadmin.django.elevue > backup_$(date +%Y%m%d_%H%M%S).sql
|
||||
djangoadmin.django.antdvue > backup_$(date +%Y%m%d_%H%M%S).sql
|
||||
|
||||
# 压缩备份
|
||||
mysqldump -h 127.0.0.1 -u root -p --single-transaction \
|
||||
djangoadmin.django.elevue | gzip > backup_$(date +%Y%m%d_%H%M%S).sql.gz
|
||||
djangoadmin.django.antdvue | gzip > backup_$(date +%Y%m%d_%H%M%S).sql.gz
|
||||
```
|
||||
|
||||
:::tip --single-transaction 作用
|
||||
@@ -100,7 +100,7 @@ mkdir -p ${BACKUP_DIR}/{mysql,redis,uploads}
|
||||
|
||||
# MySQL 备份
|
||||
mysqldump -h 127.0.0.1 -u djangoadmin -p'<密码>' \
|
||||
--single-transaction djangoadmin.django.elevue | gzip > \
|
||||
--single-transaction djangoadmin.django.antdvue | gzip > \
|
||||
${BACKUP_DIR}/mysql/backup_${DATE}.sql.gz
|
||||
|
||||
# Redis 备份
|
||||
@@ -134,10 +134,10 @@ crontab -e
|
||||
|
||||
```bash
|
||||
# 从 SQL 文件恢复
|
||||
mysql -h 127.0.0.1 -u root -p djangoadmin.django.elevue < backup_20260905.sql
|
||||
mysql -h 127.0.0.1 -u root -p djangoadmin.django.antdvue < backup_20260905.sql
|
||||
|
||||
# 从压缩文件恢复
|
||||
gunzip < backup_20260905.sql.gz | mysql -h 127.0.0.1 -u root -p djangoadmin.django.elevue
|
||||
gunzip < backup_20260905.sql.gz | mysql -h 127.0.0.1 -u root -p djangoadmin.django.antdvue
|
||||
```
|
||||
|
||||
### Redis 恢复
|
||||
|
||||
@@ -23,7 +23,7 @@ python manage.py migrate
|
||||
```
|
||||
|
||||
:::tip 初始化流程
|
||||
1. 确保数据库已创建:`CREATE DATABASE djangoadmin.django.elevue DEFAULT CHARACTER SET utf8mb4;`
|
||||
1. 确保数据库已创建:`CREATE DATABASE djangoadmin.django.antdvue DEFAULT CHARACTER SET utf8mb4;`
|
||||
2. 确保 `.env` 中的数据库配置正确
|
||||
3. 执行 `python manage.py migrate` 自动创建所有表
|
||||
:::
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
**数据库**:
|
||||
|
||||
- [ ] 安装 MySQL 8.0+
|
||||
- [ ] 创建数据库:`CREATE DATABASE djangoadmin.django.elevue DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;`
|
||||
- [ ] 创建数据库:`CREATE DATABASE djangoadmin.django.antdvue DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;`
|
||||
- [ ] 创建数据库用户并授权
|
||||
- [ ] 修改 `.env` 中的数据库配置(DATABASE_ENGINE、DATABASE_NAME、DATABASE_HOST、DATABASE_PORT、DATABASE_USER、DATABASE_PASSWORD)
|
||||
- [ ] 初始化数据库:`python manage.py migrate`
|
||||
@@ -144,7 +144,7 @@ server {
|
||||
|
||||
### 数据库迁移
|
||||
|
||||
- [ ] 备份数据库:`mysqldump -uroot -p djangoadmin.django.elevue > backup.sql`
|
||||
- [ ] 备份数据库:`mysqldump -uroot -p djangoadmin.django.antdvue > backup.sql`
|
||||
- [ ] 执行迁移:`python manage.py makemigrations && python manage.py migrate`
|
||||
- [ ] 验证迁移结果
|
||||
|
||||
@@ -204,7 +204,7 @@ cp -r /opt/backup/dist /opt/project/ui/dist
|
||||
|
||||
```bash
|
||||
# 从备份恢复
|
||||
mysql -uroot -p djangoadmin.django.elevue < backup.sql
|
||||
mysql -uroot -p djangoadmin.django.antdvue < backup.sql
|
||||
```
|
||||
|
||||
## 总结
|
||||
|
||||
@@ -151,7 +151,7 @@ services:
|
||||
image: mysql:8.0
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: root
|
||||
MYSQL_DATABASE: djangoadmin.django.elevue
|
||||
MYSQL_DATABASE: djangoadmin.django.antdvue
|
||||
volumes:
|
||||
- mysql_data:/var/lib/mysql
|
||||
ports:
|
||||
|
||||
@@ -49,7 +49,7 @@ REDIS_PASSWORD=123456
|
||||
REDIS_DB=0
|
||||
|
||||
# 文件配置
|
||||
DJANGO_FILE_URL=http://file.django.elevue
|
||||
DJANGO_FILE_URL=http://file.django.antdvue
|
||||
```
|
||||
|
||||
### Prod 环境
|
||||
@@ -91,7 +91,7 @@ DJANGO_FILE_URL=https://files.example.com
|
||||
```python
|
||||
# config/env.py 中的配置读取方式
|
||||
DATABASE_ENGINE = os.getenv('DATABASE_ENGINE', "django.db.backends.mysql")
|
||||
DATABASE_NAME = os.getenv('DATABASE_NAME', 'djangoadmin.django.elevue')
|
||||
DATABASE_NAME = os.getenv('DATABASE_NAME', 'djangoadmin.django.antdvue')
|
||||
DATABASE_HOST = os.getenv('DATABASE_HOST', "127.0.0.1")
|
||||
```
|
||||
|
||||
@@ -105,12 +105,12 @@ Docker 部署时,`docker-compose.yml` 通过 `env_file: .env` 注入环境变
|
||||
|
||||
| 变量名 | 说明 | 默认值 |
|
||||
|:----|:----|:----|
|
||||
| `DJANGO_NAME` | 应用名称(显示在浏览器标题) | Django+EleVue旗舰版 |
|
||||
| `DJANGO_NAME` | 应用名称(显示在浏览器标题) | Django+AntDesign旗舰版 |
|
||||
| `DJANGO_VERSION` | 应用版本号 | v3.0.0 |
|
||||
| `DJANGO_DEBUG` | 调试模式开关 | True |
|
||||
| `DJANGO_DEMO` | 演示模式(限制写操作) | True |
|
||||
| `DATABASE_ENGINE` | 数据库引擎 | django.db.backends.mysql |
|
||||
| `DATABASE_NAME` | 数据库名称 | djangoadmin.django.elevue |
|
||||
| `DATABASE_NAME` | 数据库名称 | djangoadmin.django.antdvue |
|
||||
| `DATABASE_HOST` | 数据库主机 | 127.0.0.1 |
|
||||
| `DATABASE_PORT` | 数据库端口 | 3306 |
|
||||
| `DATABASE_USER` | 数据库用户名 | root |
|
||||
@@ -120,7 +120,7 @@ Docker 部署时,`docker-compose.yml` 通过 `env_file: .env` 注入环境变
|
||||
| `REDIS_PORT` | Redis 端口 | 6379 |
|
||||
| `REDIS_PASSWORD` | Redis 密码 | 123456 |
|
||||
| `REDIS_DB` | Redis 数据库索引 | 0 |
|
||||
| `DJANGO_FILE_URL` | 文件访问域名 | http://file.django.elevue |
|
||||
| `DJANGO_FILE_URL` | 文件访问域名 | http://file.django.antdvue |
|
||||
| `DJANGO_UPLOAD_DIR` | 文件上传目录 | /public/uploads |
|
||||
| `IP_LOCATION_SOURCE` | IP 地理位置来源 | api |
|
||||
| `SITE_DOMAIN` | 站点域名 | http://127.0.0.1:8000 |
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
```bash
|
||||
# 1. 数据库全量备份
|
||||
mysqldump -h 127.0.0.1 -u root -p --single-transaction \
|
||||
djangoadmin.django.elevue | gzip > backup_$(date +%Y%m%d_%H%M%S).sql.gz
|
||||
djangoadmin.django.antdvue | gzip > backup_$(date +%Y%m%d_%H%M%S).sql.gz
|
||||
|
||||
# 2. 上传文件备份
|
||||
tar -czf uploads_$(date +%Y%m%d).tar.gz /data/apps/DjangoAdmin_Django_AntdVue/public/uploads/
|
||||
@@ -174,7 +174,7 @@ cd /data/apps/
|
||||
tar -xzf app_20260905.tar.gz
|
||||
|
||||
# 3. 恢复数据库
|
||||
gunzip < backup_20260905.sql.gz | mysql -u root -p djangoadmin.django.elevue
|
||||
gunzip < backup_20260905.sql.gz | mysql -u root -p djangoadmin.django.antdvue
|
||||
|
||||
# 4. 恢复上传文件
|
||||
tar -xzf uploads_20260905.tar.gz -C /
|
||||
|
||||
Reference in New Issue
Block a user