
# 典型应用场景配置
#### 日志诊断场景
ODBC日志分为unixODBC驱动管理器日志和psqlODBC驱动端日志。前者可以用于追溯应用程序API的执行成功与否，后者是底层实现过程中的一些DFX日志，用来帮助定位问题。
unixODBC日志需要在odbcinst.ini文件中配置：
```
[ODBC]
Trace=Yes
TraceFile=/path/to/odbctrace.log
[GaussMPP]
Driver64=/usr/local/lib/psqlodbcw.so
setup=/usr/local/lib/psqlodbcw.so
```
psqlODBC日志只需要在odbc.ini加上如下内容：
```
[gaussdb]
Driver=GaussMPP
Servername=10.10.0.13 #数据库Server IP
...
Debug=1 #打开驱动端debug日志
```
![](https://support.huaweicloud.com/distributed-devg-v3-gaussdb/public_sys-resources/note_3.0-zh-cn.png)
unixODBC日志将会生成在TraceFile配置的路径下，psqlODBC会在系统/tmp/下生成mylog_xxx.log。
#### 负载均衡场景
当应用程序有大并发场景时可开启负载均衡：
- 负载均衡即为将并发连接随机分发到所有CN上，避免单个CN负载过大，达到提高性能的目的。
- 配置参数AutoBalance=1，开启负载均衡功能。
- 参数RefreshCNListTime=5可以选择性配置，默认刷新时间为10s。
- 参数Priority=1可以选择性配置，即为并发连接优先发送到配置文件中配置的CN上，当配置的CN全部不可连接时，连接才会被分发到剩余CN上。
 
示例场景：
集群环境有6个CN，CN1、CN2、CN3、CN4、CN5和CN6；配置文件配置4个CN，为CN1、CN2、CN3和CN4。
odbc.ini配置文件示例：
```
[gaussdb]
Driver=GaussMPP
Servername=10.145.130.26,10.145.130.27,10.145.130.28,10.145.130.29  #数据库Server IP。
Database=postgres  #数据库名称。
Username=omm  #数据库用户名。
Password=  #数据库用户密码。
Port=8000  #数据库侦听端口。
Sslmode=allow
AutoBalance=1
RefreshCNListTime=3
Priority=1
```
当配置文件和集群环境如示例时，并发连接会随机、平均发送到CN1、CN2、CN3和CN4上，连接数均衡。当CN1、CN2、CN3和CN4全部不可用时，并发连接会随机、平均发送到CN5和CN6上。如果此时CN1、CN2、CN3和CN4中有CN重新可用时，连接则不会再发送到CN5和CN6上，而是重新发送到重新可用的CN上。
