配置数据库
目前支持的数据库:SQLServer、Oracle、DB2、MySQL、H2、Postgresql、DM达梦、GBase南大通用。
1. 数据库设置
(1)首次启动设置数据库
首次,启动应用服务器时,在管理控制台向导中,可设置本服务使用的数据库类型,设置具体数据库。
具体操作,可以参考 v-appserver--软件应用服务器。
(2)启动后修改数据库
服务初始化之后,可以在管理控制台中修改数据库类型。
访问地址:
IP:端口/system/console
——使用登录服务的 vstore 账号和密码登录
对数据库配置文件进行修改,可切换数据库类型(默认为H2数据库)。
注:应用设计器内嵌服务(一体化服务)不支持修改数据库。
(1)打开数据库配置文件
文件目录:
..\V3Runtime\userdata\conf\preferences\com.toone.v3.platform-09jdbc\DbCfg\itop\config.xml
(2)修改数据库配置
打开配置文件,根据数据库类型,参考如下修改。以下列信息为例:
数据库配置 | 配置值 |
---|---|
数据库IP | 10.1.26.186 |
数据库名称 | v3test |
用户名 | sa |
密码 | ydg |
- SQLServer
- Oracle
- DB2
- MySQL
- Postgresql
- DM 达梦
- GBase南大通用
<property key="driver_class">net.sourceforge.jtds.jdbc.Driver</property>
<property key="url">jdbc.jtds:sqlserver://10.1.26.186:1433/v3test;prepareSQL=1</property>
<property key="username">sa</property>
<property key="password">ydg</property>
<property key="dialect">org.hibernate.dialect.SQLServerDialect</property>
<property key="driver_class">oracle.jdbc.driver.OracleDriver</property>
<property key="url">jdbc:oracle:thin:@10.1.26.186:1521:v3test</property>
<property key="username">sa</property>
<property key="password">ydg</property>
<property key="dialect">org.hibernate.dialect.Oracle10gDialect</property>
<property key="driver_class">com.ibm.db2.jdbc.DB2Driver</property>
<property key="url">jdbc:db2://10.1.26.186:5000/v3test</property>
<property key="username">sa</property>
<property key="password">ydg</property>
<property key="dialect">org.hibernate.dialect.DB2Dialect</property>
<property key="driver_class">com.musql.jdbc.Driver</property>
<property key="url">jdbc:mysql://10.1.26.186:3306/v3test?useUnicode=true&characterEncoding=UTF-8</property>
<property key="username">sa</property>
<property key="password">ydg</property>
<property key="dialect">org.hibernate.dialect.MySQLDialect</property>
<property key="driver_class">org.postgresql.Driver</property>
<property key="url">jdbc:postgresql://10.1.26.186:5432/v3test</property>
<property key="username">sa</property>
<property key="password">ydg</property>
<property key="dialect">org.hibernate.dialect.PostgreSQLDialect</property>
<property key="driver_class">dm.jdbc.driver.DmDriver</property>
<property key="url">jdbc:dm://10.1.26.186:5236</property>
<property key="username">sa</property>
<property key="password">ydg</property>
<property key="dialect">org.hibernate.dialect.DmDialect</property>
<property key="driver_class">com.gbasedbt.jdbc.Driver</property>
<property key="url">jdbc:gbasedbt-sqli://10.1.26.186:9088/v3test:GBASEDBTSERVER=gbaseserver;DB_LOCALE=zh_cn.utf8;</property>
<property key="username">sa</property>
<property key="password">ydg</property>
<property key="dialect">org.hibernate.dialect.GBaseDialect</property>
2. 数据库内存设置建议
建议数据库内存设置建议给服务器操作系统预留 3G 内存,去除其他程序使用后,剩余的内存可以都分配给数据库服务器(一般来说数据库 8G 内存就足够了)。
例如:服务器有16G 内存,其他程序使用 6G,那数据库就分配 6G 左右。
具体设置如下(下面以 SQLServer 2008R2 为例,其他版本设置大同小异)。
打开 sqlserver management studio,右键点击服务 “属性” 打开编辑。
在弹出的对话框中选择内存项,设置最大内存项如 6000MB,即 6G。
以数据库 dba 角色登录进相应的数据库实例,运行命令修改:
alter system set memory_max_target =6000M scope=spfile;
alter system set memory_target = 6000M scope=spfile;重启数据库生效。
3. 数据库字符集设置建议
建议 SQLServer 使用缺省的字符集,其他数据库使用 utf-8 字符集,该设置需要在建立新库的时候就设置好,如果已有数据库修改则需要通过备份恢复才能保证修改成功。
(1)新建数据库
选择对应字符集:
utf8_general_ci
(2)修改已有数据库
① 修改缺省字符集,该命令只针对新表,dba 登录执行命令:
ALTER DATABASE db_name DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
这里的 db_nam 为数据库名。
② 修改已有表的的字符集:
ALTER TABLE tablename DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
这里的 table_name 为表名。
③ 重启生效。
4. 使用 MySQL 数据库注意事项
(1)MySQL 数据库要求设置为大小写不敏感,需要用户手动操作,请在新建数据库后,启动服务前完成
- Linux下mysql安装完后是默认:区分表名的大小写(大小写敏感),不区分列名的大小写。
- 用root帐号登录后,在
/etc/my.cnf
中的[mysqld]
后添加。
lower_case_table_names=1
- 重启MYSQL服务,这时已设置成功:不区分表名的大小写。
参数 | 值 | 值描述 |
---|---|---|
lower_case_table_names | 0或1 | 0:区分大小写,1:不区分大小写 |
(2)修改表的字段索引长度限制
MySQL 数据库版本大于等于 5.6.3,小于 8.0 时需要执行命令:
set global innodb_file_format=barracuda;set global innodb_large_prefix=ON;
5. 使用 达梦 数据库注意事项
安装 达梦数据库 新建实例的时候注意选择字符集为UTF-8和大小写不敏感,并且安装后需要修改 数据库服务实例目录 /dm.INI
文件中的 EXCLUDE_RESERVED_WORDS
参数,增加 CONTEXT
,然后重启生效