1、数据库预研可行性分析报告,特性与约束,系统要求运行在Linux和Windows下,所以要求采用跨平台的数据库访问技术 Oracle下跨平台技术有OCI,Pro*c,ODBC,其中OCI是最快的访问技术,代码库可以采用OTL,简单易用,而Proc*c技术不太容易调试,而采用ODBC技术,一样可以采用OTL代码库. MySQL下跨平台的开发库有mysql+,功能强大,可以支持ORMAP SQLServer下跨平台技术有ODBC,代码库可以采用OTL,在WINDOWS系统下的数据库连接方案,Oracle数据库连接方案 1.安装Oracle客户端 2.修改配置文件修改位于D:oracleproduct
2、10.1.0Db_1NETWORKADMIN目录下的Oracle配置文件tnsnames.ora 增加一项 APPL10G =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.30.10)(PORT = 1521)(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = appl10g) 3.现在就可以用OTL库直接通过OCI方式连接Oracle数据库了,4.通过ODBC连接Oracle数据库 安装了Oracle客户端就会有Oracle驱动,前面修改了tnsnames.ora,在这里就可
3、以看到,MySQL连接方案 既可以直接采用MySQL原生库连接(代码库采用mysql+),也可以采用ODBC连接(代码库采用OTL). SQLServer连接方案 直接采用ODBC连接(代码库采用OTL),在Linux系统下的数据库连接方案,安装unixodbc tar xfvz unixODBC-2.2.12.tar.gz ./configure -prefix=/usr -sysconfdir=/etc make install Oracle数据库的连接方案 1.安装Oralce客户端 rpm -ivh oracle-instantclient-basic-10.2.0.4-1.i386.
4、rpm rpm ivh oracle-instantclient-devel-10.2.0.4-1.i386.rpm rmp ivh oracle-instantclient-odbc-10.2.0.4-1.i386.rpm rpm ivh oracle-instantclient-sqlplus-10.2.0.4-1.i386.rpm,2. 修改/etc/profile文件 ORACLE_HOME=/usr/lib/oracle/10.2.0.4/client LD_LIBRARY_PATH=:$ORACLE_HOME/lib:/usr/local/lib:$LD_LIBRARY_PATH:
5、. SQLPATH=$ORACLE_HOME/lib:$SQLPATH TNS_ADMIN=$ORACLE_HOME PATH=$PATH:$ORACLE_HOME/bin:. TWO_TASK=appl10gExport LD_LIBRARY_PATH export TNS_ADMIN export ORACLE_HOME SQLPATH export TWO_TASK,通过ODBC连接Oracle数据库时,必须加上TWO_TASK环境变量,当通过OCI连接Oracle数据库时,是不需要加上这个环境变量的.TWO_TASK对应于tnsnames.ora配置文件中的一项. 3. 拷贝tnsna
6、mes.ora和sqlnet.ora到ORACLE_HOME 目录下,并修改tnsnames.ora,加入一项Oracle服务,4. 现在你可以使用sqlplus了. 5. 为了配置Oracle for ODBC,先拷贝/usr/share/oracle/10.2.0.4/client/libsqora* 到 /usr/lib 6. 执行ODBCConfig 点击 Add按纽,出现右边的对话框,再点击上面的Add添加Oracle for ODBC的驱动程序,弹出下面的对话框,配置Oracle for Linux的ODBC驱动程序,选择OK按纽,开始配置ODBC数据源,数据源的对话框,现在你可以
7、用DataManager查看ODBC的配置情况啦 或者用 isql DSN User Passwd 来查看ODBC的配置情况,为了让oracle客户端访问,Oracle服务器端必须开放防火墙1521端口,同时必须修改Oracle服务端的Oracle数据库的注册表参数 在注册表HKEY_LOCAL_MACHINESOFTWAREORACLEKEY_OraDb10g_home1目录下 增加一项REG_SZ数据项USE_SHARED_SOCKET,值为”TRUE”,连接SQLServer的解决方案,Linux下连接SQLServer数据库只能用freetds 安装freetds # tar xfv
8、freetds-0.82.tar.gz #./configure prefix=/usr with-unixodbc=/usr -with-tdsver=8.0 -sysconfdir=/etc -enable-msdblib -enable-dbmfix -enable-shared -enable-static #make install 2. 修改配置文件/etc/freetds.conf,增加一项服务器 SQLServer2005host = 192.168.30.88port = 1433tds version = 8.0 3. 运行ODBCConfig,配置freetds数据库驱动
9、程序如右图所示,配置SQLServer的DSN,红线所示部分对应freetds的配置文件/etc/freetds.conf中对应的条目SQLServer2005,现在你可以用DataManager查看ODBC的配置情况啦 或者用 isql DSN User Passwd 来查看ODBC的配置情况,Linux下连接MySQL数据库,Linux下连接MySQL数据库无须特别配置,但如果要配置ODBC for MySQL,则需要安装ODBC驱动 #rpm ivh mysql-connector-odbc-5.1.4-0.i386.rpm,配置MySQL的ODBC数据库驱动,配置 DSN,编译mysql+库 #tar xfvz mysql+-3.0.3.tar.gz #./configure -with-mysql-lib=/usr/lib/mysql -prefix=/usr #make install,