# 配置

返回目录

# 配置文件

CoolAdminGo配置文件默认位于mainfest/config/config.yaml.继承自GoFrame的配置文件,支持多种格式,包括yamltomljsoninixml等。可访问GoFrame 配置文件 (opens new window)查看更多配置文件格式。

# 数据库配置

CoolAdminGo支持多种数据库,可通过引入不同的依赖包进行切换,同时您也可以开发自己的数据库驱动。

# SQLite 配置

使用sqllite数据库时,需在main.go中引入_ "github.com/cool-team-official/cool-admin-go/contrib/drivers/sqlite"包,然后在config.yaml中配置sqlite数据库。

注意

sqlite引入应早于使用数据库的包, 为防止编辑器自动排序,可在数据包引入下方加一个空行。

// main.go
import (
    // 引入sqlite驱动
    _ "github.com/cool-team-official/cool-admin-go/contrib/drivers/sqlite"

    // 引入其他包
    "github.com/cool-team-official/cool-admin-go/pkg/dao"

)

配置文件中相关配置如下:

database:
  default: # 数据源名称,当不指定数据源时 default 为默认数据源
    type: "sqlite" # 数据库类型
    link: "cool.sqlite" # 数据库文件名称,可以带路径,如:/tmp/cool.sqlite
    extra: busy_timeout=5000 # 数据库连接扩展参数
    createdAt: "createTime" # 创建时间字段
    updatedAt: "updateTime" # 更新时间字段
    debug: true # 是否开启调试模式,开启后会打印SQL日志

# MySQL 配置

使用mysql数据库时,需在main.go中引入_ "github.com/cool-team-official/cool-admin-go/contrib/drivers/mysql"包,然后在config.yaml中配置mysql数据库。

注意

mysql引入应早于使用数据库的包, 为防止编辑器自动排序,可在数据包引入下方加一个空行。

// main.go
import (
    // 引入mysql驱动
    _ "github.com/cool-team-official/cool-admin-go/contrib/drivers/mysql"

    // 引入其他包
    "github.com/cool-team-official/cool-admin-go/pkg/dao"

)

配置文件中相关配置如下:

database:
  default: # 数据源名称,当不指定数据源时 default 为默认数据源
    type: "mysql" # 数据库类型
    host: "127.0.0.1" # 数据库地址
    port: "3306" # 数据库端口
    user: "root" # 数据库用户名
    pass: "123456" # 数据库密码
    name: "cooltest" # 数据库名称
    charset: "utf8mb4" # 数据库编码
    timezone: "Asia/Shanghai" # 数据库时区
    debug: true # 是否开启调试模式,开启后会打印SQL日志
    createdAt: "createTime" # 创建时间字段
    updatedAt: "updateTime" # 更新时间字段

可以使用docker-compose快速启动一个mysql数据库,配置如下:

# docker-compose.yaml
version: "3"
services:
  # mysql8 数据库
  mysql8:
    image: mysql:8
    container_name: mysql8
    command: --default-authentication-plugin=mysql_native_password --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
    # restart: always # 重启策略
    environment:
      TZ: Asia/Shanghai # 指定时区
      MYSQL_ROOT_PASSWORD: "123456" # 配置root用户密码
      MYSQL_DATABASE: "cooltest" # 业务库名
      MYSQL_USER: "cooltest" # 业务库用户名
      MTSQL_PASSWORD: "123123" # 业务库密码
    ports:
      - 3306:3306
    volumes:
      - ./data/mysql/:/var/lib/mysql/

启动mysql数据库:

docker compose  -f "docker-compose.yml" up -d --build mysql8

关闭mysql数据库:

docker compose  -f "docker-compose.yml" down mysql8

# PostgreSQL 配置

使用postgresql数据库时,需在main.go中引入_ "github.com/cool-team-official/cool-admin-go/contrib/drivers/pgsql"包,然后在config.yaml中配置postgresql数据库。

注意

postgresql引入应早于使用数据库的包, 为防止编辑器自动排序,可在数据包引入下方加一个空行。

// main.go
import (
    // 引入postgresql驱动
    _ "github.com/cool-team-official/cool-admin-go/contrib/drivers/pgsql"

    // 引入其他包
    "github.com/cool-team-official/cool-admin-go/pkg/dao"

)

配置文件中相关配置如下:

database:
  default:
    type: "pgsql" # 数据库类型
    host: "127.0.0.1" # 数据库地址
    port: "5432" # 数据库端口
    user: "cooltest" # 数据库用户名
    pass: "123456" # 数据库密码
    name: "cooltest" # 数据库名称
    debug: true # 是否开启调试模式,开启后会打印SQL日志
    createdAt: "createTime" # 创建时间字段
    updatedAt: "updateTime" # 更新时间字段