---
order: 3
---
# 工作目录和默认数据库配置

SuccBI运行时需要一个目录来存放配置文件、临时文件和缓存文件等，该目录称为“工作目录”

## 配置工作目录{#set-workdir}

通过JVM环境变量`-Dsucc.workdir`来配置工作目录。SuccBI服务器进程对这个目录要有读写权限，工作目录所在的磁盘确空间足够（可用空间大于`50G`），且性能可靠。

以Tomcat为例，如要配置`/path/to/workdir`作为工作目录，在Tomcat的`bin`目录下新建文件`setenv.sh`（windows是`setenv.bat`），Linux输入内容：

```sh
#!/bin/sh

export JAVA_OPTS="$JAVA_OPTS -Dsucc.workdir=/path/to/workdir（请修改这个路径）"
```

windows输入：

```batch
set "JAVA_OPTS=%JAVA_OPTS% -Dsucc.workdir=C:\path\to\workdir（请修改这个路径）"
```

:::warning
windows配置工作目录路径时，盘符需要为大写，如C:\path\to\workdir，否则系统设置会提示异常。
:::

## 配置默认数据库{#defjdbc}

SuccBI把元数据（模型结构信息、仪表板、报表等文件信息）、日志、权限等数据存储在数据库中，这个数据库称为“默认数据库”。

第一次部署服务器时需要先配置好工作目录，然后可以直接在工作目录中编辑`conf/jdbc.conf`来配置默认数据库；也可以直接启动服务器，用浏览器访问服务器时，SuccBI会显示默认数据库的配置界面，通过可视化界面中进行默认数据库配置。

![配置数据库](./images/2021-03-23-14-10-59.png)

服务器配置好之后，如果想修改默认数据库配置，可以在系统数据源管理中进行（数据库类型、地址、用户名、密码等关键属性不可修改）；也可以直接修改`conf/jdbc.conf`，但需要重启服务器才能生效，可参考[如何修改默认数据库配置](../../faq/如何修改默认数据库配置.md)。

[conf/jdbc.conf](/dev/meta/jdbc-conf) 是一个JSON格式的文件，你可以手工修改，但需要重启服务器才能生效。

## 工作目录的结构{#dir}

工作目录结构如下：

1. **cache** - 缓存目录，可以清理
2. **clusters-share** - 集群共享目录，此目录下的文件在集群节点之间是共享的（通过OS级别的共享目录技术实现，见[文件共享](../../cluster/README.md#文件共享)）
   - **app-attachments** - 存放应用中用户提交到模型中的附件
   - **backup** - 系统备份包存储目录
   - **cache** - 缓存目录，可以清理
   - **converted-documents** - 存放ActiveDoc转换文档的目录
   - **data-files** - 文件数据源存储目录
   - **dataflow** - 用于存放数据加工错误日志，可以清理
   - **download-service** - 存放用户临时下载文件的目录，可以清理
   - **file-storage** - 文件服务存储目录，模型上文件角色字段对应文件存储
   - **meta-thumbnails** - 存放元数据缩略图的目录
   - **meta-thumbnails-custom** - 存放用户上传的自定义元数据缩略图的目录
   - **service-cache** - 存放产品长任务运行结果和日志的目录，可以清理
   - **upload-files** - 用于存储上传附件提交前产生的临时文件，可以清理
3. **conf** - 配置目录
   - **logback.xml** - 可选，lockback的配置文件
4. **extensions-javalib** - 存放新配置数据库连接器的驱动包
5. **logs** - 存放logback日志文件的目录
6. **temp** - 临时文件目录，可以清理
