Difference: DatabaseInterfaceUpgrades (1 vs. 24)

Revision 242018-02-15 - JeanNeron

Line: 1 to 1
 
META TOPICPARENT name="APPX500InstallationInstructions"

Configuring APPX and RDBMS

Changed:
<
<
Compatibility with newer versions of popular databases is among the many features of APPX 5.0 & higher.. This page gives some examples of configuring APPX to work with various RDBMS's
>
>
Compatibility with newer versions of popular databases is among the many features of APPX 5.0 & higher. This page gives some examples of configuring APPX to work with various RDBMS's
 

Oracle

Revision 232017-04-11 - JoeOrtagus

Line: 1 to 1
 
META TOPICPARENT name="APPX500InstallationInstructions"

Configuring APPX and RDBMS

Changed:
<
<
Compatibility with newer versions of popular databases is among the many features of APPX 5.0 & higher. This page gives some examples of configuring APPX to work with various RDBMS's
>
>
Compatibility with newer versions of popular databases is among the many features of APPX 5.0 & higher.. This page gives some examples of configuring APPX to work with various RDBMS's
 

Oracle

Changed:
<
<
APPX has been tested with the the following versions of Oracle:
>
>
APPX has been tested with the following versions of Oracle:
 
  • Oracle 10g R2 (10.2.0.1)
  • Oracle 11g

Revision 222016-02-26 - JeanNeron

Line: 1 to 1
 
META TOPICPARENT name="APPX500InstallationInstructions"
Changed:
<
<

Database Interface Upgrades

>
>

Configuring APPX and RDBMS

Compatibility with newer versions of popular databases is among the many features of APPX 5.0 & higher. This page gives some examples of configuring APPX to work with various RDBMS's

 
Deleted:
<
<
Compatibility with newer versions of popular databases is among the many features of APPX 5.0.
 

Oracle

Added:
>
>
APPX has been tested with the the following versions of Oracle:
 
  • Oracle 10g R2 (10.2.0.1)
  • Oracle 11g
Added:
>
>
  • Oracle 12c
  The Oracle connectivity is provided by the Oracle Instant Client.
Line: 18 to 23
 

APPX to Oracle detailed installation example:

Changed:
<
<
Here are the steps I used to make connection with APPX 4.3.0 and Oracle 10gR2 with both installed on the same Red Hat Enterprise 5.1, 32 bit server. I assume that you already have a working installation of Oracle 10g R2.
>
>
Here are the steps I used to make connection with APPX and Oracle 10gR2 with both installed on the same Red Hat Enterprise 5.1, 32 bit server. I assume that you already have a working installation of Oracle 10g R2.
 

Create directory for Oracle Instant Client bundle to download to.

Line: 307 to 306
  oracle-fms-06.jpg
Added:
>
>
This completes the setup. To move any existing data to Oracle, use Data File Management to export the file(s), change the FMS type and name under File Specifications, then import the data.
 

ODBC

Added:
>
>
The ODBC connection type allows you to connect to any RDBMS that supports ODBC. This example uses MySQL.
 

MySQL 5.0.22

Quick installation steps of the APPX to MySQL connection:

Line: 319 to 322
 

Detailed installation example of the APPX to MySQL connection:

Changed:
<
<
Here are the steps I used to make connection with APPX 4.3.0 and MySQL 5.0.22 with both installed on the same Red Hat Enterprise 5.1, 32 bit server. The MySQL and UnixODBC will be provided by Red Hat, and the mysql-connector-odbc will be provided by MySQL. Red Hat's Yum repositories do contain mysql-connector-odbc, but at the time of this test, it was 3.51.12 (too old). For this connection we need 3.51.22 or newer. We'll get this component from the MySQL.com website.
>
>
Here are the steps I used to make connection with APPX and MySQL 5.0.22 with both installed on the same Red Hat Enterprise 5.1, 32 bit server. The MySQL and UnixODBC will be provided by Red Hat, and the mysql-connector-odbc will be provided by MySQL. Red Hat's Yum repositories do contain mysql-connector-odbc, but at the time of this test, it was 3.51.12 (too old). For this connection we need 3.51.22 or newer. We'll get this component from the MySQL.com website.
 

Download mysql-connector-odbc from MySQL.com website.

Line: 604 to 605
 

The APPX environment variable APPX_ODBC_LIB can be set an many places. Where it is set is not so important just as long as it is present at the begining of the appx session. A common convention is to set it either in the /usr/local/appx/data/appx.env file, or in the service daemon file /usr/local/appx/tools/appxd-8060.env. I'm going to place it in the daemon configuration file, after verifing that it is not set in the appx.env file.

Deleted:
<
<
 
[root@tubes tools]# *grep APPX_ODBC_LIB /usr/local/appx/data/appx.env*
[root@tubes tools]# 

Changed:
<
<
[root@tubes tools]# ./appxLoginMgr -install -SockPort=8071 APPX_KEYMAP=WINDOWS APPX_ODBC_LIB=/usr/lib/libodbc.so APPX_SS_LOG=/usr/local/appx/appx_ss_log.txt APPX_SS_CODE=0xFFFFFFFF APPX_SQL_CMD=/usr/local/appx/appx_sql_cmd.txt APPX_DBG_CODE=0xFFFFFFFF
>
>
[root@tubes tools]# ./appxLoginMgr -install -SockPort=8071 APPX_KEYMAP=WINDOWS APPX_ODBC_LIB=/usr/lib/libodbc.so APPX_SQL_CMD=/usr/local/appx/appx_sql_cmd.txt APPX_DBG_CODE=0xFFFFFFFF
 Warning - the engine that you named has the setuid bit enabled, you may not want that bit set for the authentication method that you have chosen (OS-User)
Line: 626 to 626
  To turn off the setuid bit, chmod u-s ../appx Writing process ID to /var/run/appxd-8071.pid running as process 2652 servicing port 8071
Deleted:
<
<
Warning - the engine that you named has the setuid bit enabled, you may not want that bit set for the authentication method that you have chosen (OS-User) To turn off the setuid bit, chmod u-s ../appx up and running (process 2652 servicing port 8071)
 Installation Complete
Deleted:
<
<
[root@tubes tools]# License server started as process 2657, logging to /usr/local/appx/tools/../data/license.log
 [root@tubes tools]#
Changed:
<
<
The service installation completed successfully. I added some optional debug only arguments to the service that create log files. These log files can be very helpful in debugging connection failures. Remove the debug arguments though before turning the service over to production use. The arguments I used are APPX_SS_LOG=/usr/local/appx/appx_ss_log.txt APPX_SS_CODE=0xFFFFFFFF APPX_SQL_CMD=/usr/local/appx/appx_sql_cmd.txt APPX_DBG_CODE=0xFFFFFFFF.
>
>
The service installation completed successfully. I added some optional debug only arguments to the service that create log files. These log files can be very helpful in debugging connection failures. Remove the debug arguments before turning the service over to production use. The arguments I used are APPX_SQL_CMD=/usr/local/appx/appx_sql_cmd.txt APPX_DBG_CODE=0xFFFFFFFF.
 

Configure APPX FMS parameters.

Well, MySQL is installed, configured to work with UnixODBC. Let's make the FMS settings in APPX to wrap up.

Line: 667 to 659
 
  • Enter the MySQL account's password.

mysql-fms-05.jpg

Changed:
<
<

PostgreSQL 8.1.11

Quick installation steps for the APPX to PostgreSQL connection:

  • Install PostgreSQL.
  • Install UnixODBC.
  • Define DSN files, odbc.ini and odbcinst.ini
  • Set in either the APPX Login Manager's daemon environment or the appx.env file, the APPX environment variable APPX_ODBC_LIB equal to the file name of the unixodbc shared library file from the UnixODBC install. (For example APPX_ODBC_LIB=/usr/lib/libodbc.so).
  • Now define APPX FMS settings.

Detailed installation example for the APPX to PostgreSQL connection:

Here are the steps I used to make connection with APPX 4.3.0 and PostgreSQL 8.1.11 with both installed on the same Red Hat Enterprise 5.1, 32 bit server. The PostgreSQL database and UnixODBC will be provided by Red Hat. UnixODBC will also be provided by Red Hat.

Install PostgreSQL, PostgreSQL -Server, PostgreSQL -libs, PostgreSQL -ODBC and UnixODBC

IBM DB/2

Microsoft SQL-Server

SQL Server 2000

SQL Server 2005

SQL Server 2008

Please note that under Windows Server 2008 R2, as it is a x64 OS, you need to define the ODBC data source in the 32-bits ODBC administrator. It can be found in C:\Windows\SysWow64\odbcad32.exe.

SQL Server Express

>
>
This completes the setup. To move any existing data to MySQL, use Data File Management to export the file(s), change the FMS type and name under File Specifications, then import the data.

Microsoft SQL Server (2000, 2005, 2008, SQL Server Express)

The setup steps for the Microsoft SQL Server family are the same as ODBC above, except you use the Windows ODBC Administrator tool to define the ODBC Data Source. The FMS group is set up the same way as above. Please note that if you are running a 64 bit OS, you need to use the 32 bit ODBC data source administrator. It can be found in C:\Windows\SysWow64\odbcad32.exe.

 

Database connectivity debug tools

APPX Environment Variables

Changed:
<
<

APPX_OCI_DIR

APPX_OCI_LIB

APPX_OCI_LIB

APPX_OCI_LIBS

APPX_SS_LOG

APPX_SS_CODE

APPX_SQL_CMD=/usr/local/appx/appx_sql_cmd.log

APPX_DBG_CODE=0xFFFFFFFF

Oracle

ORACLE_SID

ORACLE_HOME

TNS_ADMIN

>
>
If you are having problems connecting using the Oracle Instant client, make sure you have set the APPX_OCI_LIB to point to the Instant Client library, or APPX_OCI_DIR to point to the directory containing the Instant Client libraries. See Setting Environment Variables for more details.

You can also set the following environment variables to get a full log of the SQL commands & results:

  • APPX_SQL_CMD=<some path & flle name>
  • APPX_DBG_CODE=0xFFFFFFFF
 

Some OS tools to aid in debugging

Changed:
<
<

strace

ldd

Comments:

>
>
If availble on your platform, you can use 'strace' to see the details of the files and libraries the engine opens (or tries to open). This can be helpful diagnosing connection problems.

Comments:

  Read what other users have said about this page or add your own comments.

Revision 212016-02-25 - JeanNeron

Line: 1 to 1
 
META TOPICPARENT name="APPX500InstallationInstructions"

Database Interface Upgrades

Line: 30 to 31
 

Download the Oracle Instant Client files for Linux.

Changed:
<
<
APPX requires at least the Basic package, but it is recommended that you grab the SQL*Plus package too for debugging. http://www.oracle.com/technology/tech/oci/instantclient/index.html
>
>
APPX requires at least the Basic package, but it is recommended that you grab the SQL*Plus package too for debugging. http://www.oracle.com/technology/tech/oci/instantclient/index.html
 
For 10gR2
Line: 155 to 159
 
To let APPX know the version of the Instant client you have installed, perform just one of the following two options:
Create libclntsh.so symbolic link and set the APPX_OCI_DIR environment variable
Changed:
<
<
>
>
 
  • I can now either create a symbolic link named libclntsh.so that points to the version I want to use and set the APPX_OCI_DIR environment variable equal to the location of the Oracle Instant Client files:
[root@tubes appx]# *cd /usr/local/instantclient_10_2/*

Line: 172 to 177
 

Set APPX_OCI_LIB
Changed:
<
<
>
>
 
  • Or I can set an APPX environment variable equal to the name of the file. First let's see if it is set in the %APPXPATH%/appx.env file:
Line: 316 to 323
 

Download mysql-connector-odbc from MySQL.com website.

Changed:
<
<
You should go to MySQL.com's ODBC Connector download site and get the mysql-connector-odbc in the format that is right for your platform. My test server is Red Hat 5.1 32 bit, so I'll download the RPM format for x86 Red Hat.
>
>
You should go to MySQL.com's ODBC Connector download site and get the mysql-connector-odbc in the format that is right for your platform. My test server is Red Hat 5.1 32 bit, so I'll download the RPM format for x86 Red Hat.
 
[root@tubes ~]# *cd /usr/local/src*
[root@tubes src]# *mkdir mysql-connector-odbc.from.mysql.com*
[root@tubes src]# *cd mysql-connector-odbc.from.mysql.com/*

Line: 697 to 707
 

Some OS tools to aid in debugging

strace

ldd

Changed:
<
<

Bugs:

  1. Fixed - Bug Description 1.
  2. OPEN - Bug 2209 - Lengthen field FMS Group Options - Server Name.

Comments:

>
>

Comments:

  Read what other users have said about this page or add your own comments.

Revision 202011-11-24 - SteveLavoie

Line: 1 to 1
 
META TOPICPARENT name="APPX500InstallationInstructions"

Database Interface Upgrades

Added:
>
>
 Compatibility with newer versions of popular databases is among the many features of APPX 5.0.

Oracle

Line: 6 to 7
 

Oracle

  • Oracle 10g R2 (10.2.0.1)
  • Oracle 11g
Changed:
<
<
The Oracle connectivity is provided by the Oracle Instant Client.
>
>
The Oracle connectivity is provided by the Oracle Instant Client.
 

APPX to Oracle quick installation steps, with the assumption that you have a working install of Oracle 10g R2:

  • Install Oracle Instant Client Basic.
Line: 21 to 23
 

Create directory for Oracle Instant Client bundle to download to.

I'm going to create a directory to place the zipped bundled Oracle Instant Client files. For my example, I'm going to use /usr/local/src/oracle/instantclient/.

Changed:
<
<
[root@tubes /]# mkdir -p /usr/local/src/oracle/instantclient/ 
[root@tubes /]# cd /usr/local/src/oracle/instantclient/

>
>
[root@tubes /]# *mkdir -p /usr/local/src/oracle/instantclient/* 
[root@tubes /]# *cd /usr/local/src/oracle/instantclient/*

 [root@tubes instantclient]#
Added:
>
>
 

Download the Oracle Instant Client files for Linux.

APPX requires at least the Basic package, but it is recommended that you grab the SQL*Plus package too for debugging. http://www.oracle.com/technology/tech/oci/instantclient/index.html

Line: 36 to 38
 
For 11g
Changed:
<
<
If you are running Oracle 11g, then use the 11g Instant Client. At the time this document was created, the current version is 11.1.0.6.0 , basic.zip (42,285,643 bytes), and sqlplus.zip (784,417 bytes). Place the downloaded files in the /usr/local/src/oracle/instantclient/ directory, then unzip them.
>
>
If you are running Oracle 11g, then use the 11g Instant Client. At the time this document was created, the current version is 11.1.0.6.0 , basic.zip (42,285,643 bytes), and sqlplus.zip (784,417 bytes). Place the downloaded files in the /usr/local/src/oracle/instantclient/ directory, then unzip them.
 

Place the basic and sqlplus zipped files into /usr/local/src/oracle/instantclient/, and unzip them:

Changed:
<
<
[root@tubes instantclient]# pwd

>
>
[root@tubes instantclient]# *pwd*

 /usr/local/src/oracle/instantclient
Changed:
<
<
[root@tubes instantclient]# ls -la
>
>
[root@tubes instantclient]# ls -la
 total 34656 drwxr-xr-x 2 root root 4096 Jun 5 15:01 . drwxr-xr-x 3 root root 4096 Jun 5 14:59 .. -rw-r--r-- 1 root root 34687861 Jun 5 15:01 oracle-instantclient-basic-10.2.0.4-1.i386.zip -rw-r--r-- 1 root root 744730 Jun 5 15:01 oracle-instantclient-sqlplus-10.2.0.4-1.i386.zip
Changed:
<
<
[root@tubes instantclient]# unzip oracle-instantclient-basic-10.2.0.4-1.i386.zip
>
>
[root@tubes instantclient]# unzip oracle-instantclient-basic-10.2.0.4-1.i386.zip
 Archive: oracle-instantclient-basic-10.2.0.4-1.i386.zip inflating: instantclient_10_2/BASIC_README inflating: instantclient_10_2/classes12.jar
Line: 61 to 61
  inflating: instantclient_10_2/libociei.so inflating: instantclient_10_2/libocijdbc10.so inflating: instantclient_10_2/ojdbc14.jar
Changed:
<
<
[root@tubes instantclient]# unzip oracle-instantclient-sqlplus-10.2.0.4-1.i386.zip
>
>
[root@tubes instantclient]# unzip oracle-instantclient-sqlplus-10.2.0.4-1.i386.zip
 Archive: oracle-instantclient-sqlplus-10.2.0.4-1.i386.zip inflating: instantclient_10_2/SQLPLUS_README inflating: instantclient_10_2/glogin.sql inflating: instantclient_10_2/libsqlplus.so inflating: instantclient_10_2/libsqlplusic.so inflating: instantclient_10_2/sqlplus
Changed:
<
<
[root@tubes instantclient]# ls -la
>
>
[root@tubes instantclient]# ls -la
 total 34660 drwxr-xr-x 3 root root 4096 Jun 5 15:01 . drwxr-xr-x 3 root root 4096 Jun 5 14:59 .. drwxr-xr-x 2 root root 4096 Jun 5 15:01 instantclient_10_2 -rw-r--r-- 1 root root 34687861 Jun 5 15:01 oracle-instantclient-basic-10.2.0.4-1.i386.zip -rw-r--r-- 1 root root 744730 Jun 5 15:01 oracle-instantclient-sqlplus-10.2.0.4-1.i386.zip
Changed:
<
<
[root@tubes instantclient]# ls -la instantclient_10_2/
>
>
[root@tubes instantclient]# ls -la instantclient_10_2/
 total 102424 drwxr-xr-x 2 root root 4096 Jun 5 15:01 . drwxr-xr-x 3 root root 4096 Jun 5 15:01 ..
Line: 98 to 99
 

Place unzipped Oracle Instant Client files into permanent installation target directory.

Now move the unzipped directory (instantclient_10_2) that contains both the basic and SQL*Plus files from the Oracle Instant Client, into the desired permanent directory. In my example, I'm using /usr/local/, so that the Oracle files will be in a directory /usr/local/instantclient_10_2/.

Changed:
<
<
[root@tubes instantclient]# pwd

>
>
[root@tubes instantclient]# *pwd*

 /usr/local/src/oracle/instantclient
Changed:
<
<
[root@tubes instantclient]# ls -la
>
>
[root@tubes instantclient]# ls -la
 total 34660 drwxr-xr-x 3 root root 4096 Jun 5 15:01 . drwxr-xr-x 3 root root 4096 Jun 5 14:59 .. drwxr-xr-x 2 root root 4096 Jun 5 15:01 instantclient_10_2 -rw-r--r-- 1 root root 34687861 Jun 5 15:01 oracle-instantclient-basic-10.2.0.4-1.i386.zip -rw-r--r-- 1 root root 744730 Jun 5 15:01 oracle-instantclient-sqlplus-10.2.0.4-1.i386.zip
Changed:
<
<
[root@tubes instantclient]# ls /usr/local/
>
>
[root@tubes instantclient]# ls /usr/local/
 appx appx.tgz basic.zip bin etc games include lib libexec sbin share src
Changed:
<
<
[root@tubes instantclient]# mv instantclient_10_2/ /usr/local/ [root@tubes instantclient]# ls /usr/local/
>
>
[root@tubes instantclient]# mv instantclient_10_2/ /usr/local/ [root@tubes instantclient]# ls /usr/local/
 appx appx.tgz basic.zip bin etc games include instantclient_10_2 lib libexec sbin share src [root@tubes instantclient]#
Line: 118 to 119
 

Configure the operating system's dynamic linker run time bindings

Now we must register the Oracle Instant Client library files with the system to make the shared library's path known. I'm going to use ldconfig.

Changed:
<
<
[root@tubes instantclient]# ldconfig -v|grep libclntsh
[root@tubes instantclient]# ldconfig -v|grep instant

>
>
[root@tubes instantclient]# *ldconfig -v|grep libclntsh*
[root@tubes instantclient]# *ldconfig -v|grep instant*

 [root@tubes instantclient]#
Changed:
<
<
[root@tubes instantclient]# cat /etc/ld.so.conf
>
>
[root@tubes instantclient]# cat /etc/ld.so.conf
 include ld.so.conf.d/*.conf
Changed:
<
<
[root@tubes instantclient]# echo /usr/local/instantclient_10_2/ >> /etc/ld.so.conf [root@tubes instantclient]# cat /etc/ld.so.conf
>
>
[root@tubes instantclient]# echo /usr/local/instantclient_10_2/ >> /etc/ld.so.conf [root@tubes instantclient]# cat /etc/ld.so.conf
 include ld.so.conf.d/*.conf /usr/local/instantclient_10_2/ [root@tubes instantclient]#
Line: 133 to 134
 

Build cache used by the operating system's run-time linker

Now, let's rebuild the ldconfig cache, and verify that the library's are available system wide.

Changed:
<
<
[root@tubes instantclient]# ldconfig
[root@tubes instantclient]# ldconfig -v|grep libclntsh

>
>
[root@tubes instantclient]# *ldconfig*
[root@tubes instantclient]# *ldconfig -v|grep libclntsh*

  libclntsh.so.10.1 -> libclntsh.so.10.1
Changed:
<
<
[root@tubes instantclient]# ldconfig -v|grep instant
>
>
[root@tubes instantclient]# ldconfig -v|grep instant
 /usr/local/instantclient_10_2: [root@tubes instantclient]#
Line: 144 to 145
 

Identify version of libclntsh.so that is included with downloaded Oracle Instant Client bundle

APPX needs to know the name of the Oracle libclntsh.so file on your system. This file name changes from version to version. We must now identify the libclntsh file name that was distributed in the Oracle Instant Client bundle. Look inside the instantclient directory for a file that begins with libclntsh. To show you examples of Oracle Instant Client 10.2 and Oracle Instant Client 11.1, I have installed both versions in /usr/local/.

Changed:
<
<
[joe@tubes instantclient_10_2]$ ls -la /usr/local/instantclient_1*/libclnt*

>
>
[joe@tubes instantclient_10_2]$ *ls -la /usr/local/instantclient_1*/libclnt**

 -rwxrwxrwx 1 root root 19076649 Feb 17 03:57 /usr/local/instantclient_10_2/libclntsh.so.10.1 -rwxrwxrwx 1 root root 35295891 Aug 1 2007 /usr/local/instantclient_11_1/libclntsh.so.11.1 [joe@tubes instantclient_10_2]$
Line: 157 to 158
 

  • I can now either create a symbolic link named libclntsh.so that points to the version I want to use and set the APPX_OCI_DIR environment variable equal to the location of the Oracle Instant Client files:
Changed:
<
<
[root@tubes appx]# cd /usr/local/instantclient_10_2/
[root@tubes instantclient_10_2]# ln -s /usr/local/instantclient_10_2/libclntsh.so.10.1 /usr/local/instantclient_10_2/libclntsh.so
[root@tubes appx]# ls -la /usr/local/instantclient_10_2/libclntsh.so

>
>
[root@tubes appx]# *cd /usr/local/instantclient_10_2/*
[root@tubes instantclient_10_2]# *ln -s /usr/local/instantclient_10_2/libclntsh.so.10.1 /usr/local/instantclient_10_2/libclntsh.so*
[root@tubes appx]# *ls -la /usr/local/instantclient_10_2/libclntsh.so*

 lrwxrwxrwx 1 root root 47 Jun 5 15:56 libclntsh.so -> /usr/local/instantclient_10_2/libclntsh.so.10.1 [root@tubes instantclient_10_2]#
Changed:
<
<
[root@tubes appx]# grep APPX_OCI_DIR /usr/local/appx/data/appx.env
>
>
[root@tubes appx]# grep APPX_OCI_DIR /usr/local/appx/data/appx.env
 [root@tubes instantclient_10_2]#
Changed:
<
<
[root@tubes appx]# echo APPX_OCI_DIR=/usr/local/instantclient_10_2/ >> /usr/local/appx/data/appx.env [root@tubes appx]# grep APPX_OCI_DIR /usr/local/appx/data/appx.env
>
>
[root@tubes appx]# echo APPX_OCI_DIR=/usr/local/instantclient_10_2/ >> /usr/local/appx/data/appx.env [root@tubes appx]# grep APPX_OCI_DIR /usr/local/appx/data/appx.env
 APPX_OCI_DIR=/usr/local/instantclient_10_2/ [root@tubes appx]#
Changed:
<
<
>
>
 
Set APPX_OCI_LIB

  • Or I can set an APPX environment variable equal to the name of the file. First let's see if it is set in the %APPXPATH%/appx.env file:
Changed:
<
<
[root@tubes appx]# 
[root@tubes appx]# grep APPX_OCI_LIB /usr/local/appx/data/appx.env

>
>
[root@tubes appx]# 
[root@tubes appx]# *grep APPX_OCI_LIB /usr/local/appx/data/appx.env*

 [root@tubes appx]#
Changed:
<
<
[root@tubes appx]# echo APPX_OCI_LIB=libclntsh.so.10.1 >> /usr/local/appx/data/appx.env
>
>
[root@tubes appx]# echo APPX_OCI_LIB=libclntsh.so.10.1 >> /usr/local/appx/data/appx.env
 [root@tubes appx]#
Changed:
<
<
[root@tubes appx]# grep APPX_OCI_LIB /usr/local/appx/data/appx.env
>
>
[root@tubes appx]# grep APPX_OCI_LIB /usr/local/appx/data/appx.env
 APPX_OCI_LIB=libclntsh.so.10.1 [root@tubes appx]#
Changed:
<
<
>
>
 

Use the Oracle Instant Client's version of SQL*Plus to verify connectify to Oracle.

Now let's verify that we can connect to Oracle using Oracle's SQL*Plus tool. I'm going to use the following parameters for my example, be sure and use values that are correct for your Oracle instance. user=scott, password=password, server=tubes, port=1521, and Oracle Instance=appx.

Changed:
<
<
[root@tubes instantclient_10_2]# /usr/local/instantclient_10_2/sqlplus scott/password@tubes:1521/appx

>
>
[root@tubes instantclient_10_2]# */usr/local/instantclient_10_2/sqlplus scott/password@tubes:1521/appx*

 SQL*Plus: Release 10.2.0.4.0 - Production on Wed Jun 4 09:17:55 2008 Copyright (c) 1982, 2007, Oracle. All Rights Reserved. Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production With the Partitioning, OLAP and Data Mining options
Changed:
<
<
SQL> show all
>
>
SQL> show all
 appinfo is OFF and set to "SQL*Plus" arraysize 15 autocommit OFF
Line: 213 to 210
 concat "." (hex 2e) copycommit 0 COPYTYPECHECK is ON
Changed:
<
<
define "&" (hex 26)
>
>
define "&" (hex 26)
 describe DEPTH 1 LINENUM OFF INDENT ON echo OFF editfile "afiedt.buf"
Line: 269 to 266
 USER is "SCOTT" verify ON wrap : lines will be wrapped
Changed:
<
<
SQL> quit
>
>
SQL> quit
 Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production With the Partitioning, OLAP and Data Mining options [root@tubes instantclient_10_2]#
Line: 279 to 277
 Well, that looks good. Let's configure our FMS settings inside APPX and make a connection!

  • In APPX, Go to System Administration, then File Management, then FMS Groups.
Changed:
<
<
oracle-fms-01.jpg
>
>
oracle-fms-01.jpg
 
  • Create an FMS group with an appropriate name, and specify type 5.
Changed:
<
<
oracle-fms-02.jpg
>
>
oracle-fms-02.jpg
 
  • File in the Server Name and Table Naming Scheme in the FMS Group Attributes of your new FMS group. The Server Name field has a format of ORACLE-HOST-NAME:ORACLE-PORT/ORACLE-SID. The Table Naming Scheme could be picked from the suggestions shown when clicking on the Hints button.
Changed:
<
<
oracle-fms-03.jpg
>
>
oracle-fms-03.jpg
 
  • Under Identities, define at least a default identity.
Changed:
<
<
oracle-fms-04.jpg
>
>
oracle-fms-04.jpg
 
  • Enter the Oracle account to use for the Default Identity, leave Realm empty.
Changed:
<
<
oracle-fms-05.jpg
>
>
oracle-fms-05.jpg
 
  • Enter the Oracle account's password.
Changed:
<
<
oracle-fms-06.jpg
>
>
oracle-fms-06.jpg
 

ODBC

MySQL 5.0.22

Line: 311 to 315
 Here are the steps I used to make connection with APPX 4.3.0 and MySQL 5.0.22 with both installed on the same Red Hat Enterprise 5.1, 32 bit server. The MySQL and UnixODBC will be provided by Red Hat, and the mysql-connector-odbc will be provided by MySQL. Red Hat's Yum repositories do contain mysql-connector-odbc, but at the time of this test, it was 3.51.12 (too old). For this connection we need 3.51.22 or newer. We'll get this component from the MySQL.com website.

Download mysql-connector-odbc from MySQL.com website.

Added:
>
>
 You should go to MySQL.com's ODBC Connector download site and get the mysql-connector-odbc in the format that is right for your platform. My test server is Red Hat 5.1 32 bit, so I'll download the RPM format for x86 Red Hat.
Changed:
<
<
[root@tubes ~]# cd /usr/local/src
[root@tubes src]# mkdir mysql-connector-odbc.from.mysql.com
[root@tubes src]# cd mysql-connector-odbc.from.mysql.com/
[root@tubes mysql-connector-odbc.from.mysql.com]# wget http://mirror.trouble-free.net/mysql_mirror/Downloads/Connector-ODBC/3.51/mysql-connector-odbc-3.51.25-0.i386.rpm

>
>
[root@tubes ~]# *cd /usr/local/src*
[root@tubes src]# *mkdir mysql-connector-odbc.from.mysql.com*
[root@tubes src]# *cd mysql-connector-odbc.from.mysql.com/*
[root@tubes mysql-connector-odbc.from.mysql.com]# *wget http://mirror.trouble-free.net/mysql_mirror/Downloads/Connector-ODBC/3.51/mysql-connector-odbc-3.51.25-0.i386.rpm*

  Resolving mirror.trouble-free.net... 66.45.230.130 Connecting to mirror.trouble-free.net|66.45.230.130|:80... connected.
Line: 326 to 330
 

Install MySQL, MySQL-Server, and UnixODBC

Deleted:
<
<
We will now install MySQL 5.0.22 (MySQL client programs and shared libraries.), MySQL-Server 5.0.22-2.2 (The MySQL server and related files.) and UnixODBC 2.2.11-7.1 (includes low-level drivers for MySQL, PostgreSQL, and local files.)
 
Changed:
<
<

>
>
We will now install MySQL 5.0.22 (MySQL client programs and shared libraries.), MySQL-Server 5.0.22-2.2 (The MySQL server and related files.) and UnixODBC 2.2.11-7.1 (includes low-level drivers for MySQL, PostgreSQL, and local files.)
 
Changed:
<
<
[root@tubes mysql-connector-odbc.from.mysql.com]# yum install mysql mysql-server unixODBC
>
>
[root@tubes mysql-connector-odbc.from.mysql.com]# *yum install mysql mysql-server unixODBC*

 Loading "installonlyn" plugin Setting up Install Process Setting up repositories Reading repository metadata in from local files Parsing package install arguments Resolving Dependencies
Changed:
<
<
--> Populating transaction set with selected packages. Please wait.
> Package mysql.i386 0:5.0.22-2.2.el5_1.1 set to be updated
> Downloading header for mysql-server to pack into transaction set.
>
>
--> Populating transaction set with selected packages. Please wait.
> Package mysql.i386 0:5.0.22-2.2.el5_1.1 set to be updated
> Downloading header for mysql-server to pack into transaction set.
 mysql-server-5.0.22-2.2.e 100% |=========================| 33 kB 00:00
Changed:
<
<

> Package mysql-server.i386 0:5.0.22-2.2.el5_1.1 set to be updated
> Downloading header for unixODBC to pack into transaction set.
>
>

> Package mysql-server.i386 0:5.0.22-2.2.el5_1.1 set to be updated
> Downloading header for unixODBC to pack into transaction set.
 unixODBC-2.2.11-7.1.i386. 100% |=========================| 28 kB 00:00
Changed:
<
<

> Package unixODBC.i386 0:2.2.11-7.1 set to be updated --> Running transaction check --> Processing Dependency: perl-DBD-MySQL for package: mysql-server --> Restarting Dependency Resolution with new changes. --> Populating transaction set with selected packages. Please wait.
> Downloading header for perl-DBD-MySQL to pack into transaction set.
>
>

> Package unixODBC.i386 0:2.2.11-7.1 set to be updated --> Running transaction check --> Processing Dependency: perl-DBD-MySQL for package: mysql-server --> Restarting Dependency Resolution with new changes. --> Populating transaction set with selected packages. Please wait.
> Downloading header for perl-DBD-MySQL to pack into transaction set.
 perl-DBD-MySQL-3.0007-1.f 100% |=========================| 8.3 kB 00:00
Changed:
<
<

> Package perl-DBD-MySQL.i386 0:3.0007-1.fc6 set to be updated --> Running transaction check
>
>

> Package perl-DBD-MySQL.i386 0:3.0007-1.fc6 set to be updated --> Running transaction check
  Dependencies Resolved
Line: 392 to 395
 Complete! [root@tubes mysql-connector-odbc.from.mysql.com]#
Added:
>
>
 

Install mysql-connector-odbc version 3.51.22 or newer.

Added:
>
>
 We need to install mysql-connector-odbc version 3.51.22 or newer. We already downloaded it in an earlier step.
Changed:
<
<
[root@tubes mysql-connector-odbc.from.mysql.com]# rpm -ivh mysql-connector-odbc-3.51.25-0.i386.rpm 

>
>
[root@tubes mysql-connector-odbc.from.mysql.com]# *rpm -ivh mysql-connector-odbc-3.51.25-0.i386.rpm* 

 error: Failed dependencies: libltdl.so.3 is needed by mysql-connector-odbc-3.51.25-0.i386
Line: 400 to 404
 error: Failed dependencies: libltdl.so.3 is needed by mysql-connector-odbc-3.51.25-0.i386
Added:
>
>
 As you can see, my server is missing libltdl.so.3. That file is found in the libtool-ltdl package. Let's install it now.
Changed:
<
<
[root@tubes mysql-connector-odbc.from.mysql.com]# yum install libtool-ltdl

>
>
[root@tubes mysql-connector-odbc.from.mysql.com]# *yum install libtool-ltdl*

 Loading "installonlyn" plugin Setting up Install Process Setting up repositories Reading repository metadata in from local files Parsing package install arguments Resolving Dependencies
Changed:
<
<
--> Populating transaction set with selected packages. Please wait.
> Downloading header for libtool-ltdl to pack into transaction set.
>
>
--> Populating transaction set with selected packages. Please wait.
> Downloading header for libtool-ltdl to pack into transaction set.
 libtool-ltdl-1.5.22-6.1.i 100% |=========================| 15 kB 00:00
Changed:
<
<

> Package libtool-ltdl.i386 0:1.5.22-6.1 set to be updated --> Running transaction check
>
>

> Package libtool-ltdl.i386 0:1.5.22-6.1 set to be updated --> Running transaction check
  Dependencies Resolved
Line: 443 to 447
 Complete! [root@tubes mysql-connector-odbc.from.mysql.com]#
Added:
>
>
 Success! Now let's resume our installation of mysql-connector-odbc.
Changed:
<
<
[root@tubes mysql-connector-odbc.from.mysql.com]# rpm -ivh mysql-connector-odbc-3.51.25-0.i386.rpm 

>
>
[root@tubes mysql-connector-odbc.from.mysql.com]# *rpm -ivh mysql-connector-odbc-3.51.25-0.i386.rpm* 

 Preparing... ########################################### [100%]
  1. :mysql-connector-odbc ########################################### [100%]
[myodbc3i.c][589][INFO] Driver registered. Usage count is 1. Location "/etc"
Line: 451 to 455
 [myodbc3i.c][589][INFO] Driver registered. Usage count is 1. Location "/etc" [root@tubes mysql-connector-odbc.from.mysql.com]#
Added:
>
>
 

Create MySQL database and database user.

Added:
>
>
 If you don't already have a MySQL database created along with a MySQL database user, you need to create one. Our example will use a database named appx. The MySQL user name will be appx, which is a preexisting OS user. Substitute your own values for database name and database/OS user.
Changed:
<
<
[root@tubes mysql-connector-odbc.from.mysql.com]# mysql -uroot -p

>
>
[root@tubes mysql-connector-odbc.from.mysql.com]# *mysql -uroot -p*

 Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 3 to server version: 5.0.22

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

Changed:
<
<
mysql> create database appx;
>
>
mysql> create database appx;
 Query OK, 1 row affected (0.00 sec)
Changed:
<
<
mysql> grant all on appx.* to appx@localhost identified by "password";
>
>
mysql> grant all on appx. to appx@localhost identified by "password";*
 Query OK, 0 rows affected (0.00 sec)
Changed:
<
<
mysql> flush privileges;
>
>
mysql> flush privileges;
 Query OK, 0 rows affected (0.00 sec)
Changed:
<
<
mysql> quit
>
>
mysql> quit
 Bye [root@tubes mysql-connector-odbc.from.mysql.com]#

Determine where UnixODBC expects odbc.ini and odbcinst.ini configuration files to be located.

Deleted:
<
<
The odbc.ini and odbcinst.ini configuration files can be located on various places in your server's file system. The safest way to make sure you are working on the correct location is to run odbcinst -j. Here is an example:
 
Changed:
<
<

>
>
The odbc.ini and odbcinst.ini configuration files can be located on various places in your server's file system. The safest way to make sure you are working on the correct location is to run odbcinst -j. Here is an example:
 
Changed:
<
<
[root@tubes tools]# odbcinst -j
>
>
[root@tubes tools]# *odbcinst -j*

 unixODBC 2.2.11 DRIVERS............: /etc/odbcinst.ini SYSTEM DATA SOURCES: /etc/odbc.ini
Line: 493 to 500
 The odbc.ini file contains a list of Data Sources and any properties for each. There are two types of odbc.ini files; 1) System and 2) User. We will be working with the System DSN files only, and not the User DSN files. The System odbc.ini file usually exists at /etc/odbc.ini or /usr/local/etc/odbc.ini while the user usually exists at ~/.odbc.ini.

We need to build the odbc.ini file. The odbc.ini file can contain stanzas for different drivers. The content of each driver's stanza is driver specific (MySQL, PostgreSQL, FreeTDS, MiniSQL etc...). My /etc/odbc.ini file looks like this:

Changed:
<
<
[root@tubes tools]# 
[root@tubes tools]# cat /etc/odbc.ini

>
>
[root@tubes tools]# 
[root@tubes tools]# *cat /etc/odbc.ini*

 [mysql] Driver = mysql Database = appx
Line: 506 to 512
 UID = appx [root@tubes tools]#
Deleted:
<
<
The [mysql] bracketed value is the Data Source Name. The Driver field is referenced in the APPX FMS settings, and in the odbcinst.ini file as a bracked value stanza header. The Database field is the name of the database that you want APPX to store data in. This database was created in an earlier step. The Description is informational only. The Pwd field contains the password for the MySQL user. Port is the port that MySQL is configured to listen on. The default is 3306. If it is something else, it would be listed in /etc/my.cnf. Server is the servername containing the MySQL instance we are connecting to. UID is the DSN's user account to connect to MySQL.
 
Added:
>
>
The [mysql] bracketed value is the Data Source Name. The Driver field is referenced in the APPX FMS settings, and in the odbcinst.ini file as a bracked value stanza header. The Database field is the name of the database that you want APPX to store data in. This database was created in an earlier step. The Description is informational only. The Pwd field contains the password for the MySQL user. Port is the port that MySQL is configured to listen on. The default is 3306. If it is something else, it would be listed in /etc/my.cnf. Server is the servername containing the MySQL instance we are connecting to. UID is the DSN's user account to connect to MySQL.
 

Configure /etc/odbcinst.ini

Added:
>
>
 This ini file simply lists all installed drivers. It is usually located in either /etc/odbcinst.ini, or /usr/local/etc/odbcinst.ini.

We need to build the odbcinst.ini file. The odbc.ini file content is driver specific (MySQL, PostgreSQL, FreeTDS, MiniSQL etc...). My file looks like this:

Line: 513 to 520
 This ini file simply lists all installed drivers. It is usually located in either /etc/odbcinst.ini, or /usr/local/etc/odbcinst.ini.

We need to build the odbcinst.ini file. The odbc.ini file content is driver specific (MySQL, PostgreSQL, FreeTDS, MiniSQL etc...). My file looks like this:

Changed:
<
<
[root@tubes tools]# cat /etc/odbcinst.ini

>
>
[root@tubes tools]# *cat /etc/odbcinst.ini*

 [PostgreSQL] Description = ODBC for PostgreSQL Driver = /usr/lib/libodbcpsql.so
Line: 531 to 537
 UsageCount = 1 [root@tubes tools]#
Changed:
<
<
We are only interested in the [mysql] stanza. The [mysql] value matches the Driver and [mysql] bracked stanza DSN name values from the odbc.ini file. The Description field is informational only. The Driver field is the name of the driver file that was provided by the mysql.com mysql-connector-odbc-3.51.25-0 RPM. The Pwd field contains the password for the MySQL user. Port is the port that MySQL is configured to listen on. The default is 3306. If it is something else, it would be listed in /etc/my.cnf. Server is the servername containing the MySQL instance we are connecting to. UID is the DSN's user account to connect to MySQL.
>
>
We are only interested in the [mysql] stanza. The [mysql] value matches the Driver and [mysql] bracked stanza DSN name values from the odbc.ini file. The Description field is informational only. The Driver field is the name of the driver file that was provided by the mysql.com mysql-connector-odbc-3.51.25-0 RPM. The Pwd field contains the password for the MySQL user. Port is the port that MySQL is configured to listen on. The default is 3306. If it is something else, it would be listed in /etc/my.cnf. Server is the servername containing the MySQL instance we are connecting to. UID is the DSN's user account to connect to MySQL.
  The mysql-connector-odbc that we downloaded from mysql.com did not have a Setup library included, so we skipped that property. The Setup property points to a shared lib containing functions to be called by ODBC Config. By convention it usually has a capitol S towards the end of the file name such as libmyodbc3S.so. ODBC Config would call this library to get driver specific property names during data source configuration. If ODBC Config can not find or use this file it will assume some defaults.

Verify DSNs are working.

Line: 535 to 542
  The mysql-connector-odbc that we downloaded from mysql.com did not have a Setup library included, so we skipped that property. The Setup property points to a shared lib containing functions to be called by ODBC Config. By convention it usually has a capitol S towards the end of the file name such as libmyodbc3S.so. ODBC Config would call this library to get driver specific property names during data source configuration. If ODBC Config can not find or use this file it will assume some defaults.

Verify DSNs are working.

Added:
>
>
 Now that the configuration files are in place, and the DSN is defined, let's test it out. We will use the isql command to make a connection to our DSN named mysql.
Changed:
<
<
[root@tubes mysql-connector-odbc.from.mysql.com]# isql -v mysql

>
>
[root@tubes mysql-connector-odbc.from.mysql.com]# *isql -v mysql*

 +---------------------------------------+
Connected!
 
Line: 547 to 554
 
quit
 
+---------------------------------------+
Changed:
<
<
SQL> show databases;
>
>
SQL> show databases;
 +-----------------------------------------------------------------+
Database
+-----------------------------------------------------------------+
Line: 557 to 564
 +-----------------------------------------------------------------+ SQLRowCount returns 3 3 rows fetched
Changed:
<
<
SQL> quit
>
>
SQL> quit
 [root@tubes mysql-connector-odbc.from.mysql.com]#
Added:
>
>
 
Troubleshoot isql problems.
Added:
>
>
 If isql complains that it can't make a connection to the MySQL socket in /tmp/mysql.sock, then the MySQL configuration file /etc/my.cnf might be set to create the file in /var/lib/mysql/mysql.sock. You should change the my.cnf file to point to /tmp/mysql.sock, or create a symbolic link.
Changed:
<
<
isql -v mysql

>
>
 *isql -v mysql*

 [08S01][unixODBC][MySQL][ODBC 3.51 Driver]Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) [ISQL]ERROR: Could not SQLConnect
Changed:
<
<
[root@tubes mysql-connector-odbc.from.mysql.com]# updatedb [root@tubes mysql-connector-odbc.from.mysql.com]# locate mysql.sock
>
>
[root@tubes mysql-connector-odbc.from.mysql.com]# updatedb [root@tubes mysql-connector-odbc.from.mysql.com]# locate mysql.sock
 /var/lib/mysql/mysql.sock
Changed:
<
<
[root@tubes mysql-connector-odbc.from.mysql.com]# ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
>
>
[root@tubes mysql-connector-odbc.from.mysql.com]# ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
 

Set the APPX_ODBC_LIB environment variable

Added:
>
>
 APPX needs to what and where the libodbc file is. libodbc is provided by unixODBC. On my system it is libodbc.so.1.0.0. For convenience, libodbc.so is a symbolic link to libodbc.so.1.0.0.
Changed:
<
<
[root@tubes tools]# updatedb
[root@tubes tools]# locate libodbc.so

>
>
[root@tubes tools]# *updatedb*
[root@tubes tools]# *locate libodbc.so*

 /usr/lib/libodbc.so /usr/lib/libodbc.so.1 /usr/lib/libodbc.so.1.0.0
Changed:
<
<
[root@tubes tools]# ls -la /usr/lib/libodbc.so* lrwxrwxrwx 1 root root 16 Jun 11 15:37 /usr/lib/libodbc.so -> libodbc.so.1.0.0 lrwxrwxrwx 1 root root 16 Jun 11 15:37 /usr/lib/libodbc.so.1 -> libodbc.so.1.0.0
>
>
[root@tubes tools]# ls -la /usr/lib/libodbc.so* lrwxrwxrwx 1 root root 16 Jun 11 15:37 /usr/lib/libodbc.so -> libodbc.so.1.0.0 lrwxrwxrwx 1 root root 16 Jun 11 15:37 /usr/lib/libodbc.so.1 -> libodbc.so.1.0.0
 -rwxr-xr-x 1 root root 447700 Jan 7 2007 /usr/lib/libodbc.so.1.0.0 [root@tubes tools]#
Line: 585 to 593
 -rwxr-xr-x 1 root root 447700 Jan 7 2007 /usr/lib/libodbc.so.1.0.0 [root@tubes tools]#
Added:
>
>
 The APPX environment variable APPX_ODBC_LIB can be set an many places. Where it is set is not so important just as long as it is present at the begining of the appx session. A common convention is to set it either in the /usr/local/appx/data/appx.env file, or in the service daemon file /usr/local/appx/tools/appxd-8060.env. I'm going to place it in the daemon configuration file, after verifing that it is not set in the appx.env file.
Changed:
<
<
[root@tubes tools]# grep APPX_ODBC_LIB /usr/local/appx/data/appx.env

>
>
[root@tubes tools]# *grep APPX_ODBC_LIB /usr/local/appx/data/appx.env*

 [root@tubes tools]#
Changed:
<
<
[root@tubes tools]# ./appxLoginMgr -install -SockPort=8071 APPX_KEYMAP=WINDOWS APPX_ODBC_LIB=/usr/lib/libodbc.so APPX_SS_LOG=/usr/local/appx/appx_ss_log.txt APPX_SS_CODE=0xFFFFFFFF APPX_SQL_CMD=/usr/local/appx/appx_sql_cmd.txt APPX_DBG_CODE=0xFFFFFFFF
>
>
[root@tubes tools]# ./appxLoginMgr -install -SockPort=8071 APPX_KEYMAP=WINDOWS APPX_ODBC_LIB=/usr/lib/libodbc.so APPX_SS_LOG=/usr/local/appx/appx_ss_log.txt APPX_SS_CODE=0xFFFFFFFF APPX_SQL_CMD=/usr/local/appx/appx_sql_cmd.txt APPX_DBG_CODE=0xFFFFFFFF
 Warning - the engine that you named has the setuid bit enabled, you may not want that bit set for the authentication method that you have chosen (OS-User)
Line: 625 to 635
 Well, MySQL is installed, configured to work with UnixODBC. Let's make the FMS settings in APPX to wrap up.

  • In APPX, Go to System Administration, then File Management, then FMS Groups.
Changed:
<
<
oracle-fms-01.jpg
>
>
oracle-fms-01.jpg
 
  • Create an FMS group with an appropriate name, and specify type 6 for ODBC.
Changed:
<
<
mysql-fms-01.jpg
>
>
mysql-fms-01.jpg
 
  • File in the ODBC DSN name for MySQL, followed by the Table Naming Scheme in the FMS Group Attributes of your new FMS group. The Table Naming Scheme could be picked from the suggestions shown when clicking on the Hints button. Also, add any three character value to the Proxy Lock field, I used LOK.
Changed:
<
<
mysql-fms-02.jpg
>
>
mysql-fms-02.jpg
 
  • Under Identities, define at least a default identity.
Changed:
<
<
mysql-fms-03.jpg
>
>
mysql-fms-03.jpg
 
  • Enter the MySQL account to use for the Default Identity, leave Realm empty.
Changed:
<
<
mysql-fms-04.jpg
>
>
mysql-fms-04.jpg
 
  • Enter the MySQL account's password.
Changed:
<
<
mysql-fms-05.jpg
>
>
mysql-fms-05.jpg
 

PostgreSQL 8.1.11

Quick installation steps for the APPX to PostgreSQL connection:

Line: 660 to 676
 

SQL Server 2000

SQL Server 2005

SQL Server 2008

Added:
>
>
Please note that under Windows Server 2008 R2, as it is a x64 OS, you need to define the ODBC data source in the 32-bits ODBC administrator. It can be found in C:\Windows\SysWow64\odbcad32.exe.

 

SQL Server Express

Database connectivity debug tools

APPX Environment Variables

Line: 679 to 698
 

strace

ldd

Bugs:

Changed:
<
<
  1. Fixed - Bug Description 1.
  2. OPEN - Bug 2209 - Lengthen field FMS Group Options - Server Name.
>
>
  1. Fixed - Bug Description 1.
  2. OPEN - Bug 2209 - Lengthen field FMS Group Options - Server Name.
 

Comments:

Added:
>
>
 Read what other users have said about this page or add your own comments.
Changed:
<
<
<--/commentPlugin-->
-- AlKalter - 04 Apr 2008
>
>
<--/commentPlugin-->
-- AlKalter - 04 Apr 2008
 
META FILEATTACHMENT attachment="oracle-fms-01.jpg" attr="" comment="APPX System Administration, File Management, FMS Groups." date="1212700202" name="oracle-fms-01.jpg" path="oracle-fms-01.jpg" size="80062" stream="oracle-fms-01.jpg" user="Main.JoeOrtagus" version="2"
META FILEATTACHMENT attachment="oracle-fms-02.jpg" attr="" comment="Create FMS group name, and specify type of 5." date="1212700410" name="oracle-fms-02.jpg" path="oracle-fms-02.jpg" size="40473" stream="oracle-fms-02.jpg" user="Main.JoeOrtagus" version="1"

Revision 192009-10-21 - JoeOrtagus

Line: 1 to 1
 
META TOPICPARENT name="APPX500InstallationInstructions"

Database Interface Upgrades

Compatibility with newer versions of popular databases is among the many features of APPX 5.0.

Revision 182009-03-02 - JoeOrtagus

Line: 1 to 1
 
META TOPICPARENT name="APPX500InstallationInstructions"

Database Interface Upgrades

Changed:
<
<
Compatibility with newer versions of popular databases is among the many features of APPX 4.3.
>
>
Compatibility with newer versions of popular databases is among the many features of APPX 5.0.
 

Oracle

  • Oracle 10g R2 (10.2.0.1)

Revision 172008-09-25 - SteveFrizzell

Line: 1 to 1
Changed:
<
<
META TOPICPARENT name="APPX500Features"
>
>
META TOPICPARENT name="APPX500InstallationInstructions"
 

Database Interface Upgrades

Compatibility with newer versions of popular databases is among the many features of APPX 4.3.

Revision 162008-09-15 - SteveFrizzell

Line: 1 to 1
Changed:
<
<
META TOPICPARENT name="APPX43Features"
>
>
META TOPICPARENT name="APPX500Features"
 

Database Interface Upgrades

Compatibility with newer versions of popular databases is among the many features of APPX 4.3.

Revision 152008-06-12 - JoeOrtagus

Line: 1 to 1
 
META TOPICPARENT name="APPX43Features"

Database Interface Upgrades

Compatibility with newer versions of popular databases is among the many features of APPX 4.3.
Line: 641 to 641
 
  • Enter the MySQL account's password.
mysql-fms-05.jpg
Changed:
<
<

PostgreSQL 8.1.9

>
>

PostgreSQL 8.1.11

Quick installation steps for the APPX to PostgreSQL connection:

  • Install PostgreSQL.
  • Install UnixODBC.
  • Define DSN files, odbc.ini and odbcinst.ini
  • Set in either the APPX Login Manager's daemon environment or the appx.env file, the APPX environment variable APPX_ODBC_LIB equal to the file name of the unixodbc shared library file from the UnixODBC install. (For example APPX_ODBC_LIB=/usr/lib/libodbc.so).
  • Now define APPX FMS settings.

Detailed installation example for the APPX to PostgreSQL connection:

Here are the steps I used to make connection with APPX 4.3.0 and PostgreSQL 8.1.11 with both installed on the same Red Hat Enterprise 5.1, 32 bit server. The PostgreSQL database and UnixODBC will be provided by Red Hat. UnixODBC will also be provided by Red Hat.

Install PostgreSQL, PostgreSQL-Server, PostgreSQL-libs, PostgreSQL-ODBC and UnixODBC

 

IBM DB/2

Microsoft SQL-Server

SQL Server 2000

Revision 142008-06-12 - JoeOrtagus

Line: 1 to 1
 
META TOPICPARENT name="APPX43Features"

Database Interface Upgrades

Compatibility with newer versions of popular databases is among the many features of APPX 4.3.
Line: 488 to 488
 USER DATA SOURCES..: /root/.odbc.ini [root@tubes tools]#
Changed:
<
<
Here you can see that UnixODBC is expecting the two system configuration files to be located at /etc/odbc.ini and /etc/odbcinst.ini. Now that we know the location, let's configure the files.
>
>
Here you can see that UnixODBC is expecting the two system configuration files to be located at /etc/odbc.ini and /etc/odbcinst.ini. Now that we know the location, let's configure the files. Both files can contain multiple sections or stanzas that are each identified by bracked values. Each bracked value is followed by property value definitions, one per line, in the format PROPERTY NAME=PROPERTY VALUE.
 

Configure /etc/odbc.ini

Changed:
<
<
The odbc.ini file contains a list of Data Sources and any properties for each. There are two types of odbc.ini files; 1) System and 2) User. The System odbc.ini file usually exists as /etc/odbc.ini or /usr/local/etc/odbc.ini while the user usually exist as ~/.odbc.ini. We need to build the odbc.ini file. The odbc.ini file content is driver specific (MySQL, PostgreSQL, FreeTDS, MiniSQL etc...). My file looks like this:
>
>
The odbc.ini file contains a list of Data Sources and any properties for each. There are two types of odbc.ini files; 1) System and 2) User. We will be working with the System DSN files only, and not the User DSN files. The System odbc.ini file usually exists at /etc/odbc.ini or /usr/local/etc/odbc.ini while the user usually exists at ~/.odbc.ini.

We need to build the odbc.ini file. The odbc.ini file can contain stanzas for different drivers. The content of each driver's stanza is driver specific (MySQL, PostgreSQL, FreeTDS, MiniSQL etc...). My /etc/odbc.ini file looks like this:

 
[root@tubes tools]# 

Changed:
<
<
[root@tubes tools]# cat /etc/odbc.ini
>
>
[root@tubes tools]# cat /etc/odbc.ini
 [mysql] Driver = mysql Database = appx
Line: 505 to 506
 UID = appx [root@tubes tools]#
Changed:
<
<
The Driver field is referenced in the APPX FMS settings, and in the odbcinst.ini file. The Database field is the name of the database that you want APPX to store data in. This database was created in an earlier step. The Description is informational only. The Pwd field contains the password for the MySQL user. Port is the port that MySQL is configured to listen on. The default is 3306. If it is something else, it would be listed in /etc/my.cnf. Server is the servername containing the MySQL instance we are connecting to. UID is the DSN's user account to connect to MySQL.
>
>
The [mysql] bracketed value is the Data Source Name. The Driver field is referenced in the APPX FMS settings, and in the odbcinst.ini file as a bracked value stanza header. The Database field is the name of the database that you want APPX to store data in. This database was created in an earlier step. The Description is informational only. The Pwd field contains the password for the MySQL user. Port is the port that MySQL is configured to listen on. The default is 3306. If it is something else, it would be listed in /etc/my.cnf. Server is the servername containing the MySQL instance we are connecting to. UID is the DSN's user account to connect to MySQL.
 

Configure /etc/odbcinst.ini

Changed:
<
<
This ini file simply lists all installed drivers. It is usually located in either /etc/odbcinst.ini, or /usr/local/etc/odbcinst.ini. The syntax is simple; a name followed by a property which tells us the drivers file name. For example;

[MySQL 5]
Comment = New MySQL Driver
Driver =  /usr/lib/libmysql.so.11
Setup = /usr/lib/libmysqlS.so.11
FileUsage = 1

The Driver file name ( ie /usr/lib/libsybase.so.11 ) should be unique. The friendly name ( ie MySQL 5 ) must also be unique.

The Setup property points to a shared lib containing functions to be called by ODBC Config. ODBC Config will call this share to get driver specific property names during data source configuration. If ODBC Config can not find/use this file it will assume some defaults such as; Data Source Name, Host, and default Database.

One should always modify this file either using the ODBCINST share library or by using the command line equivalent odbcinst.

>
>
This ini file simply lists all installed drivers. It is usually located in either /etc/odbcinst.ini, or /usr/local/etc/odbcinst.ini.
  We need to build the odbcinst.ini file. The odbc.ini file content is driver specific (MySQL, PostgreSQL, FreeTDS, MiniSQL etc...). My file looks like this:

Line: 532 to 519
 Description = ODBC for PostgreSQL Driver = /usr/lib/libodbcpsql.so Setup = /usr/lib/libodbcpsqlS.so
Changed:
<
<
FileUsage = 1
>
>
FileUsage = 0
  [MySQL ODBC 3.51 Driver] DRIVER = /usr/lib/libmyodbc3.so
Changed:
<
<
UsageCount = 1
>
>
UsageCount = 0
  [mysql] Description = mysql odbc connection for appx
Line: 544 to 531
 UsageCount = 1 [root@tubes tools]#
Changed:
<
<
We are only interested in the [mysql] stanza. The Description field is informational only. The Driver field is the name of the driver file that was provided by the mysql.com mysql-connector-odbc-3.51.25-0 RPM. The Description is informational only. The Pwd field contains the password for the MySQL user. Port is the port that MySQL is configured to listen on. The default is 3306. If it is something else, it would be listed in /etc/my.cnf. Server is the servername containing the MySQL instance we are connecting to. UID is the DSN's user account to connect to MySQL.
>
>
We are only interested in the [mysql] stanza. The [mysql] value matches the Driver and [mysql] bracked stanza DSN name values from the odbc.ini file. The Description field is informational only. The Driver field is the name of the driver file that was provided by the mysql.com mysql-connector-odbc-3.51.25-0 RPM. The Pwd field contains the password for the MySQL user. Port is the port that MySQL is configured to listen on. The default is 3306. If it is something else, it would be listed in /etc/my.cnf. Server is the servername containing the MySQL instance we are connecting to. UID is the DSN's user account to connect to MySQL.

The mysql-connector-odbc that we downloaded from mysql.com did not have a Setup library included, so we skipped that property. The Setup property points to a shared lib containing functions to be called by ODBC Config. By convention it usually has a capitol S towards the end of the file name such as libmyodbc3S.so. ODBC Config would call this library to get driver specific property names during data source configuration. If ODBC Config can not find or use this file it will assume some defaults.

 

Verify DSNs are working.

Changed:
<
<
We will use the isql command to make a connection to our DSN named mysql.
>
>
Now that the configuration files are in place, and the DSN is defined, let's test it out. We will use the isql command to make a connection to our DSN named mysql.
 
[root@tubes mysql-connector-odbc.from.mysql.com]# isql -v mysql

Line: 571 to 560
 SQL> quit [root@tubes mysql-connector-odbc.from.mysql.com]#
Added:
>
>
Troubleshoot isql problems.
If isql complains that it can't make a connection to the MySQL socket in /tmp/mysql.sock, then the MySQL configuration file /etc/my.cnf might be set to create the file in /var/lib/mysql/mysql.sock. You should change the my.cnf file to point to /tmp/mysql.sock, or create a symbolic link.
isql -v mysql
[08S01][unixODBC][MySQL][ODBC 3.51 Driver]Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
[ISQL]ERROR: Could not SQLConnect
[root@tubes mysql-connector-odbc.from.mysql.com]# updatedb
[root@tubes mysql-connector-odbc.from.mysql.com]# locate mysql.sock
/var/lib/mysql/mysql.sock
[root@tubes mysql-connector-odbc.from.mysql.com]# ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
 

Set the APPX_ODBC_LIB environment variable

Added:
>
>
APPX needs to what and where the libodbc file is. libodbc is provided by unixODBC. On my system it is libodbc.so.1.0.0. For convenience, libodbc.so is a symbolic link to libodbc.so.1.0.0.
[root@tubes tools]# updatedb
[root@tubes tools]# locate libodbc.so
/usr/lib/libodbc.so
/usr/lib/libodbc.so.1
/usr/lib/libodbc.so.1.0.0
[root@tubes tools]# ls -la /usr/lib/libodbc.so*
lrwxrwxrwx 1 root root     16 Jun 11 15:37 /usr/lib/libodbc.so -> libodbc.so.1.0.0
lrwxrwxrwx 1 root root     16 Jun 11 15:37 /usr/lib/libodbc.so.1 -> libodbc.so.1.0.0
-rwxr-xr-x 1 root root 447700 Jan  7  2007 /usr/lib/libodbc.so.1.0.0
[root@tubes tools]#
The APPX environment variable APPX_ODBC_LIB can be set an many places. Where it is set is not so important just as long as it is present at the begining of the appx session. A common convention is to set it either in the /usr/local/appx/data/appx.env file, or in the service daemon file /usr/local/appx/tools/appxd-8060.env. I'm going to place it in the daemon configuration file, after verifing that it is not set in the appx.env file.
[root@tubes tools]# grep APPX_ODBC_LIB /usr/local/appx/data/appx.env
[root@tubes tools]# 
[root@tubes tools]# ./appxLoginMgr -install -SockPort=8071 APPX_KEYMAP=WINDOWS APPX_ODBC_LIB=/usr/lib/libodbc.so APPX_SS_LOG=/usr/local/appx/appx_ss_log.txt APPX_SS_CODE=0xFFFFFFFF APPX_SQL_CMD=/usr/local/appx/appx_sql_cmd.txt APPX_DBG_CODE=0xFFFFFFFF
Warning - the engine that you named has the setuid bit enabled,
          you may not want that bit set for the authentication
          method that you have chosen (OS-User)
 	   To turn off the setuid bit, chmod u-s ../appx
Configuration written to:  appxd-8071.ini
Environment written to:    appxd-8071.env
Service script written to: /etc/init.d/appxd-8071
Configuration complete
Registering service
Starting appxd-8071: serviceName: appxd-8071
servicePath: /usr/local/appx/tools/
Looking for config file in appxd-8071.ini
Warning - the engine that you named has the setuid bit enabled,
          you may not want that bit set for the authentication
          method that you have chosen (OS-User)
 	   To turn off the setuid bit, chmod u-s ../appx
Writing process ID to /var/run/appxd-8071.pid
running as process 2652 servicing port 8071

Warning - the engine that you named has the setuid bit enabled,
          you may not want that bit set for the authentication
          method that you have chosen (OS-User)
 	   To turn off the setuid bit, chmod u-s ../appx
up and running (process 2652 servicing port 8071)
Installation Complete

[root@tubes tools]# License server started as process 2657, logging to /usr/local/appx/tools/../data/license.log

[root@tubes tools]# 
The service installation completed successfully. I added some optional debug only arguments to the service that create log files. These log files can be very helpful in debugging connection failures. Remove the debug arguments though before turning the service over to production use. The arguments I used are APPX_SS_LOG=/usr/local/appx/appx_ss_log.txt APPX_SS_CODE=0xFFFFFFFF APPX_SQL_CMD=/usr/local/appx/appx_sql_cmd.txt APPX_DBG_CODE=0xFFFFFFFF.
 

Configure APPX FMS parameters.

Added:
>
>
Well, MySQL is installed, configured to work with UnixODBC. Let's make the FMS settings in APPX to wrap up.

  • In APPX, Go to System Administration, then File Management, then FMS Groups.
oracle-fms-01.jpg

  • Create an FMS group with an appropriate name, and specify type 6 for ODBC.
mysql-fms-01.jpg

  • File in the ODBC DSN name for MySQL, followed by the Table Naming Scheme in the FMS Group Attributes of your new FMS group. The Table Naming Scheme could be picked from the suggestions shown when clicking on the Hints button. Also, add any three character value to the Proxy Lock field, I used LOK.
mysql-fms-02.jpg

  • Under Identities, define at least a default identity.
mysql-fms-03.jpg

  • Enter the MySQL account to use for the Default Identity, leave Realm empty.
mysql-fms-04.jpg

  • Enter the MySQL account's password.
mysql-fms-05.jpg
 

PostgreSQL 8.1.9

IBM DB/2

Microsoft SQL-Server

Line: 612 to 680
 
META FILEATTACHMENT attachment="oracle-fms-04.jpg" attr="" comment="Specify Identity or the Oracle account to login as." date="1212700571" name="oracle-fms-04.jpg" path="oracle-fms-04.jpg" size="48630" stream="oracle-fms-04.jpg" user="Main.JoeOrtagus" version="1"
META FILEATTACHMENT attachment="oracle-fms-05.jpg" attr="" comment="Enter the Oracle user ID here." date="1212700611" name="oracle-fms-05.jpg" path="oracle-fms-05.jpg" size="47115" stream="oracle-fms-05.jpg" user="Main.JoeOrtagus" version="1"
META FILEATTACHMENT attachment="oracle-fms-06.jpg" attr="" comment="Enter the Oracle password here." date="1212700660" name="oracle-fms-06.jpg" path="oracle-fms-06.jpg" size="51280" stream="oracle-fms-06.jpg" user="Main.JoeOrtagus" version="1"
Added:
>
>
META FILEATTACHMENT attachment="mysql-fms-01.jpg" attr="" comment="Create FMS group name, and specify type 6 for ODBC." date="1213296033" name="mysql-fms-01.jpg" path="mysql-fms-01.jpg" size="55696" stream="mysql-fms-01.jpg" user="Main.JoeOrtagus" version="1"
META FILEATTACHMENT attachment="mysql-fms-05.jpg" attr="" comment="Enter the MySQL password here." date="1213296377" name="mysql-fms-05.jpg" path="mysql-fms-05.jpg" size="67830" stream="mysql-fms-05.jpg" user="Main.JoeOrtagus" version="1"
META FILEATTACHMENT attachment="mysql-fms-04.jpg" attr="" comment="Enter the MySQL user ID here." date="1213296452" name="mysql-fms-04.jpg" path="mysql-fms-04.jpg" size="63381" stream="mysql-fms-04.jpg" user="Main.JoeOrtagus" version="1"
META FILEATTACHMENT attachment="mysql-fms-03.jpg" attr="" comment="Specify a default identity for the FMS connection." date="1213296598" name="mysql-fms-03.jpg" path="mysql-fms-03.jpg" size="63847" stream="mysql-fms-03.jpg" user="Main.JoeOrtagus" version="1"
META FILEATTACHMENT attachment="mysql-fms-02.jpg" attr="" comment="Enter MySQL DSN name, Table naming scheme, and any three character value for Proxy Lock ID." date="1213296699" name="mysql-fms-02.jpg" path="mysql-fms-02.jpg" size="67603" stream="mysql-fms-02.jpg" user="Main.JoeOrtagus" version="1"

Revision 132008-06-12 - JoeOrtagus

Line: 1 to 1
 
META TOPICPARENT name="APPX43Features"

Database Interface Upgrades

Compatibility with newer versions of popular databases is among the many features of APPX 4.3.
Line: 476 to 476
 [root@tubes mysql-connector-odbc.from.mysql.com]#
Added:
>
>

Determine where UnixODBC expects odbc.ini and odbcinst.ini configuration files to be located.

The odbc.ini and odbcinst.ini configuration files can be located on various places in your server's file system. The safest way to make sure you are working on the correct location is to run odbcinst -j. Here is an example:


[root@tubes tools]# odbcinst -j
unixODBC 2.2.11
DRIVERS............: /etc/odbcinst.ini
SYSTEM DATA SOURCES: /etc/odbc.ini
USER DATA SOURCES..: /root/.odbc.ini
[root@tubes tools]# 
Here you can see that UnixODBC is expecting the two system configuration files to be located at /etc/odbc.ini and /etc/odbcinst.ini. Now that we know the location, let's configure the files.
 

Configure /etc/odbc.ini

The odbc.ini file contains a list of Data Sources and any properties for each. There are two types of odbc.ini files; 1) System and 2) User. The System odbc.ini file usually exists as /etc/odbc.ini or /usr/local/etc/odbc.ini while the user usually exist as ~/.odbc.ini. We need to build the odbc.ini file. The odbc.ini file content is driver specific (MySQL, PostgreSQL, FreeTDS, MiniSQL etc...). My file looks like this:

Revision 122008-06-12 - JoeOrtagus

Line: 1 to 1
 
META TOPICPARENT name="APPX43Features"

Database Interface Upgrades

Compatibility with newer versions of popular databases is among the many features of APPX 4.3.
Line: 8 to 8
 
  • Oracle 11g
The Oracle connectivity is provided by the Oracle Instant Client.
Changed:
<
<

APPX to Oracle quick installation steps:

>
>

APPX to Oracle quick installation steps, with the assumption that you have a working install of Oracle 10g R2:

 
  • Install Oracle Instant Client Basic.
  • Make the Oracle Instant Client library files visible to the system with the ldconfig tool or it's equivalent.
  • Set, in either the APPX Login Manager's daemon environment or the appx.env file, the APPX environment variable APPX_OCI_LIB equal to the file name of the liblcntsh.so contained in the Oracle Instant Client library files (For example APPX_OCI_LIB=libclntsh.so.10.1).
Line: 16 to 16
 

APPX to Oracle detailed installation example:

Changed:
<
<
Here are the steps I used to make connection with APPX 4.3.0 and Oracle 10gR2 with both installed on the same Red Hat Enterprise 5.1, 32 bit server.
>
>
Here are the steps I used to make connection with APPX 4.3.0 and Oracle 10gR2 with both installed on the same Red Hat Enterprise 5.1, 32 bit server. I assume that you already have a working installation of Oracle 10g R2.
 

Create directory for Oracle Instant Client bundle to download to.

Line: 477 to 477
 

Configure /etc/odbc.ini

Added:
>
>
The odbc.ini file contains a list of Data Sources and any properties for each. There are two types of odbc.ini files; 1) System and 2) User. The System odbc.ini file usually exists as /etc/odbc.ini or /usr/local/etc/odbc.ini while the user usually exist as ~/.odbc.ini.
 We need to build the odbc.ini file. The odbc.ini file content is driver specific (MySQL, PostgreSQL, FreeTDS, MiniSQL etc...). My file looks like this:
[root@tubes tools]# 

Line: 495 to 496
 

Configure /etc/odbcinst.ini

Added:
>
>
This ini file simply lists all installed drivers. It is usually located in either /etc/odbcinst.ini, or /usr/local/etc/odbcinst.ini. The syntax is simple; a name followed by a property which tells us the drivers file name. For example;

[MySQL 5]
Comment = New MySQL Driver
Driver =  /usr/lib/libmysql.so.11
Setup = /usr/lib/libmysqlS.so.11
FileUsage = 1

The Driver file name ( ie /usr/lib/libsybase.so.11 ) should be unique. The friendly name ( ie MySQL 5 ) must also be unique.

The Setup property points to a shared lib containing functions to be called by ODBC Config. ODBC Config will call this share to get driver specific property names during data source configuration. If ODBC Config can not find/use this file it will assume some defaults such as; Data Source Name, Host, and default Database.

One should always modify this file either using the ODBCINST share library or by using the command line equivalent odbcinst.

We need to build the odbcinst.ini file. The odbc.ini file content is driver specific (MySQL, PostgreSQL, FreeTDS, MiniSQL etc...). My file looks like this:

[root@tubes tools]# cat /etc/odbcinst.ini
[PostgreSQL]
Description		= ODBC for PostgreSQL
Driver		= /usr/lib/libodbcpsql.so
Setup		= /usr/lib/libodbcpsqlS.so
FileUsage		= 1

[MySQL ODBC 3.51 Driver]
DRIVER		= /usr/lib/libmyodbc3.so
UsageCount		= 1

[mysql]
Description	= mysql odbc connection for appx
Driver		= /usr/lib/libmyodbc3.so
UsageCount	= 1
[root@tubes tools]# 
We are only interested in the [mysql] stanza. The Description field is informational only. The Driver field is the name of the driver file that was provided by the mysql.com mysql-connector-odbc-3.51.25-0 RPM. The Description is informational only. The Pwd field contains the password for the MySQL user. Port is the port that MySQL is configured to listen on. The default is 3306. If it is something else, it would be listed in /etc/my.cnf. Server is the servername containing the MySQL instance we are connecting to. UID is the DSN's user account to connect to MySQL.
 

Verify DSNs are working.

We will use the isql command to make a connection to our DSN named mysql.

Revision 112008-06-11 - JoeOrtagus

Line: 1 to 1
 
META TOPICPARENT name="APPX43Features"

Database Interface Upgrades

Compatibility with newer versions of popular databases is among the many features of APPX 4.3.
Line: 8 to 8
 
  • Oracle 11g
The Oracle connectivity is provided by the Oracle Instant Client.
Changed:
<
<

Quick installation steps:

>
>

APPX to Oracle quick installation steps:

 
  • Install Oracle Instant Client Basic.
  • Make the Oracle Instant Client library files visible to the system with the ldconfig tool or it's equivalent.
  • Set, in either the APPX Login Manager's daemon environment or the appx.env file, the APPX environment variable APPX_OCI_LIB equal to the file name of the liblcntsh.so contained in the Oracle Instant Client library files (For example APPX_OCI_LIB=libclntsh.so.10.1).
  • Define APPX FMS settings.
Changed:
<
<

Detailed installation example:

>
>

APPX to Oracle detailed installation example:

  Here are the steps I used to make connection with APPX 4.3.0 and Oracle 10gR2 with both installed on the same Red Hat Enterprise 5.1, 32 bit server.
Line: 284 to 284
 
  • Create an FMS group with an appropriate name, and specify type 5.
oracle-fms-02.jpg
Changed:
<
<
  • File in the Server Name and Table Naming Scheme in the FMS Group Attributes of your new FMS group.  The Server Name field has a format of ORACLE-HOST-NAME:ORACLE-PORT/ORACLE-SID. The Table Naming Scheme could be picked from the suggestions shown when clicking on the Hints button.
>
>
  • File in the Server Name and Table Naming Scheme in the FMS Group Attributes of your new FMS group. The Server Name field has a format of ORACLE-HOST-NAME:ORACLE-PORT/ORACLE-SID. The Table Naming Scheme could be picked from the suggestions shown when clicking on the Hints button.
 oracle-fms-03.jpg

  • Under Identities, define at least a default identity.
Line: 298 to 298
 

ODBC

MySQL 5.0.22

Changed:
<
<

Quick installation steps:

>
>

Quick installation steps of the APPX to MySQL connection:

 
Added:
>
>
  • Install mysql-connector-odbc (version 3.51.22 or newer)
 
  • Define DSN files, odbc.ini and odbcinst.ini.
Changed:
<
<
  • Set, in either the APPX Login Manager's daemon environment or the appx.env file, the APPX environment variable APPX_ODBC_LIB equal to the file name of the unixodbc shared library file from the UnixODBC install. (For example APPX_ODBC_LIB=libclntsh.so.10.1).
>
>
  • Set, in either the APPX Login Manager's daemon environment or the appx.env file, the APPX environment variable APPX_ODBC_LIB equal to the file name of the unixodbc shared library file from the UnixODBC install. (For example APPX_ODBC_LIB=/usr/lib/libodbc.so).
 
  • Define APPX FMS settings.
Changed:
<
<

Detailed installation example:

>
>

Detailed installation example of the APPX to MySQL connection:

 
Changed:
<
<
Here are the steps I used to make connection with APPX 4.3.0 and Oracle 10gR2 with both installed on the same Red Hat Enterprise 5.1, 32 bit server.
>
>
Here are the steps I used to make connection with APPX 4.3.0 and MySQL 5.0.22 with both installed on the same Red Hat Enterprise 5.1, 32 bit server. The MySQL and UnixODBC will be provided by Red Hat, and the mysql-connector-odbc will be provided by MySQL. Red Hat's Yum repositories do contain mysql-connector-odbc, but at the time of this test, it was 3.51.12 (too old). For this connection we need 3.51.22 or newer. We'll get this component from the MySQL.com website.

Download mysql-connector-odbc from MySQL.com website.

You should go to MySQL.com's ODBC Connector download site and get the mysql-connector-odbc in the format that is right for your platform. My test server is Red Hat 5.1 32 bit, so I'll download the RPM format for x86 Red Hat.
[root@tubes ~]# cd /usr/local/src
[root@tubes src]# mkdir mysql-connector-odbc.from.mysql.com
[root@tubes src]# cd mysql-connector-odbc.from.mysql.com/
[root@tubes mysql-connector-odbc.from.mysql.com]# wget http://mirror.trouble-free.net/mysql_mirror/Downloads/Connector-ODBC/3.51/mysql-connector-odbc-3.51.25-0.i386.rpm

Resolving mirror.trouble-free.net... 66.45.230.130
Connecting to mirror.trouble-free.net|66.45.230.130|:80... connected.


15:35:31 (158 KB/s) - `mysql-connector-odbc-3.51.25-0.i386.rpm' saved [1862076/1862076]
 

Install MySQL, MySQL-Server, and UnixODBC

We will now install MySQL 5.0.22 (MySQL client programs and shared libraries.), MySQL-Server 5.0.22-2.2 (The MySQL server and related files.) and UnixODBC 2.2.11-7.1 (includes low-level drivers for MySQL, PostgreSQL, and local files.)


[root@tubes mysql-connector-odbc.from.mysql.com]# yum install mysql mysql-server unixODBC
Loading "installonlyn" plugin
Setting up Install Process
Setting up repositories
Reading repository metadata in from local files
Parsing package install arguments
Resolving Dependencies
--> Populating transaction set with selected packages. Please wait.
---> Package mysql.i386 0:5.0.22-2.2.el5_1.1 set to be updated
---> Downloading header for mysql-server to pack into transaction set.
mysql-server-5.0.22-2.2.e 100% |=========================|  33 kB    00:00     
---> Package mysql-server.i386 0:5.0.22-2.2.el5_1.1 set to be updated
---> Downloading header for unixODBC to pack into transaction set.
unixODBC-2.2.11-7.1.i386. 100% |=========================|  28 kB    00:00     
---> Package unixODBC.i386 0:2.2.11-7.1 set to be updated
--> Running transaction check
--> Processing Dependency: perl-DBD-MySQL for package: mysql-server
--> Restarting Dependency Resolution with new changes.
--> Populating transaction set with selected packages. Please wait.
---> Downloading header for perl-DBD-MySQL to pack into transaction set.
perl-DBD-MySQL-3.0007-1.f 100% |=========================| 8.3 kB    00:00     
---> Package perl-DBD-MySQL.i386 0:3.0007-1.fc6 set to be updated
--> Running transaction check

Dependencies Resolved

=============================================================================
 Package                 Arch       Version          Repository        Size 
=============================================================================
Installing:
 mysql                   i386       5.0.22-2.2.el5_1.1  updates           3.0 M
 mysql-server            i386       5.0.22-2.2.el5_1.1  updates            10 M
 unixODBC                i386       2.2.11-7.1       base              832 k
Installing for dependencies:
 perl-DBD-MySQL          i386       3.0007-1.fc6     base              147 k

Transaction Summary
=============================================================================
Install      4 Package(s)         
Update       0 Package(s)         
Remove       0 Package(s)         

Total download size: 14 M
Is this ok [y/N]: y
Downloading Packages:
(1/3): perl-DBD-MySQL-3.0 100% |=========================| 147 kB    00:01     
(2/3): mysql-server-5.0.2 100% |=========================|  10 MB    01:20     
(3/3): unixODBC-2.2.11-7. 100% |=========================| 832 kB    00:05     
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing: mysql                        ######################### [1/4] 
  Installing: perl-DBD-MySQL               ######################### [2/4] 
  Installing: mysql-server                 ######################### [3/4] 
  Installing: unixODBC                     ######################### [4/4] 

Installed: mysql.i386 0:5.0.22-2.2.el5_1.1 mysql-server.i386 0:5.0.22-2.2.el5_1.1 unixODBC.i386 0:2.2.11-7.1
Dependency Installed: perl-DBD-MySQL.i386 0:3.0007-1.fc6
Complete!
[root@tubes mysql-connector-odbc.from.mysql.com]# 

Install mysql-connector-odbc version 3.51.22 or newer.

We need to install mysql-connector-odbc version 3.51.22 or newer. We already downloaded it in an earlier step.

[root@tubes mysql-connector-odbc.from.mysql.com]# rpm -ivh mysql-connector-odbc-3.51.25-0.i386.rpm 
error: Failed dependencies:
	libltdl.so.3 is needed by mysql-connector-odbc-3.51.25-0.i386
As you can see, my server is missing libltdl.so.3. That file is found in the libtool-ltdl package. Let's install it now.
[root@tubes mysql-connector-odbc.from.mysql.com]# yum install libtool-ltdl
Loading "installonlyn" plugin
Setting up Install Process
Setting up repositories
Reading repository metadata in from local files
Parsing package install arguments
Resolving Dependencies
--> Populating transaction set with selected packages. Please wait.
---> Downloading header for libtool-ltdl to pack into transaction set.
libtool-ltdl-1.5.22-6.1.i 100% |=========================|  15 kB    00:00     
---> Package libtool-ltdl.i386 0:1.5.22-6.1 set to be updated
--> Running transaction check

Dependencies Resolved

=============================================================================
 Package                 Arch       Version          Repository        Size 
=============================================================================
Installing:
 libtool-ltdl            i386       1.5.22-6.1       base               37 k

Transaction Summary
=============================================================================
Install      1 Package(s)         
Update       0 Package(s)         
Remove       0 Package(s)         

Total download size: 37 k
Is this ok [y/N]: y
Downloading Packages:
(1/1): libtool-ltdl-1.5.2 100% |=========================|  37 kB    00:00     
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing: libtool-ltdl                 ######################### [1/1] 

Installed: libtool-ltdl.i386 0:1.5.22-6.1
Complete!
[root@tubes mysql-connector-odbc.from.mysql.com]# 
Success! Now let's resume our installation of mysql-connector-odbc.
[root@tubes mysql-connector-odbc.from.mysql.com]# rpm -ivh mysql-connector-odbc-3.51.25-0.i386.rpm 
Preparing...                ########################################### [100%]
   1:mysql-connector-odbc   ########################################### [100%]
[myodbc3i.c][589][INFO] Driver registered. Usage count is 1. Location "/etc" 
[root@tubes mysql-connector-odbc.from.mysql.com]# 

Create MySQL database and database user.

If you don't already have a MySQL database created along with a MySQL database user, you need to create one. Our example will use a database named appx. The MySQL user name will be appx, which is a preexisting OS user. Substitute your own values for database name and database/OS user.

[root@tubes mysql-connector-odbc.from.mysql.com]# mysql -uroot -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3 to server version: 5.0.22

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> create database appx;
Query OK, 1 row affected (0.00 sec)

mysql> grant all on appx.* to appx@localhost identified by "password";
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> quit
Bye
[root@tubes mysql-connector-odbc.from.mysql.com]# 

Configure /etc/odbc.ini

We need to build the odbc.ini file. The odbc.ini file content is driver specific (MySQL, PostgreSQL, FreeTDS, MiniSQL etc...). My file looks like this:
[root@tubes tools]# 
[root@tubes tools]# cat /etc/odbc.ini
[mysql]
Driver		= mysql
Database	= appx
Description	= mysql odbc connection for appx
Pwd		= password
Port		= 3306
Server		= localhost
UID		= appx
[root@tubes tools]# 
The Driver field is referenced in the APPX FMS settings, and in the odbcinst.ini file. The Database field is the name of the database that you want APPX to store data in. This database was created in an earlier step. The Description is informational only. The Pwd field contains the password for the MySQL user. Port is the port that MySQL is configured to listen on. The default is 3306. If it is something else, it would be listed in /etc/my.cnf. Server is the servername containing the MySQL instance we are connecting to. UID is the DSN's user account to connect to MySQL.

Configure /etc/odbcinst.ini

Verify DSNs are working.

We will use the isql command to make a connection to our DSN named mysql.

[root@tubes mysql-connector-odbc.from.mysql.com]# isql -v mysql
+---------------------------------------+
| Connected!                            |
|                                       |
| sql-statement                         |
| help [tablename]                      |
| quit                                  |
|                                       |
+---------------------------------------+
SQL> show databases;
+-----------------------------------------------------------------+
| Database                                                        |
+-----------------------------------------------------------------+
| information_schema                                              |
| appx                                                            |
| test                                                            |
+-----------------------------------------------------------------+
SQLRowCount returns 3
3 rows fetched
SQL> quit
[root@tubes mysql-connector-odbc.from.mysql.com]# 

Set the APPX_ODBC_LIB environment variable

Configure APPX FMS parameters.

 

PostgreSQL 8.1.9

IBM DB/2

Microsoft SQL-Server

Revision 102008-06-11 - JoeOrtagus

Line: 1 to 1
 
META TOPICPARENT name="APPX43Features"

Database Interface Upgrades

Compatibility with newer versions of popular databases is among the many features of APPX 4.3.
Line: 298 to 298
 

ODBC

MySQL 5.0.22

Added:
>
>

Quick installation steps:

  • Install MySQL.
  • Install UnixODBC
  • Define DSN files, odbc.ini and odbcinst.ini.
  • Set, in either the APPX Login Manager's daemon environment or the appx.env file, the APPX environment variable APPX_ODBC_LIB equal to the file name of the unixodbc shared library file from the UnixODBC install. (For example APPX_ODBC_LIB=libclntsh.so.10.1).
  • Define APPX FMS settings.

Detailed installation example:

Here are the steps I used to make connection with APPX 4.3.0 and Oracle 10gR2 with both installed on the same Red Hat Enterprise 5.1, 32 bit server.

 

PostgreSQL 8.1.9

IBM DB/2

Microsoft SQL-Server

Revision 92008-06-06 - JoeOrtagus

Line: 1 to 1
 
META TOPICPARENT name="APPX43Features"

Database Interface Upgrades

Compatibility with newer versions of popular databases is among the many features of APPX 4.3.
Line: 8 to 8
 
  • Oracle 11g
The Oracle connectivity is provided by the Oracle Instant Client.
Changed:
<
<
Quick installation steps:
>
>

Quick installation steps:

 
  • Install Oracle Instant Client Basic.
  • Make the Oracle Instant Client library files visible to the system with the ldconfig tool or it's equivalent.
  • Set, in either the APPX Login Manager's daemon environment or the appx.env file, the APPX environment variable APPX_OCI_LIB equal to the file name of the liblcntsh.so contained in the Oracle Instant Client library files (For example APPX_OCI_LIB=libclntsh.so.10.1).
Added:
>
>
  • Define APPX FMS settings.
 
Changed:
<
<
Detailed installation example:
>
>

Detailed installation example:

  Here are the steps I used to make connection with APPX 4.3.0 and Oracle 10gR2 with both installed on the same Red Hat Enterprise 5.1, 32 bit server.
Added:
>
>

Create directory for Oracle Instant Client bundle to download to.

 I'm going to create a directory to place the zipped bundled Oracle Instant Client files. For my example, I'm going to use /usr/local/src/oracle/instantclient/.
[root@tubes /]# mkdir -p /usr/local/src/oracle/instantclient/ 
[root@tubes /]# cd /usr/local/src/oracle/instantclient/
[root@tubes instantclient]# 
Changed:
<
<
Download the Oracle Instant Client files for Linux. APPX requires at least the Basic package, but it is recommended that you grab the SQL*Plus package too for debugging.
>
>

Download the Oracle Instant Client files for Linux.

APPX requires at least the Basic package, but it is recommended that you grab the SQL*Plus package too for debugging. http://www.oracle.com/technology/tech/oci/instantclient/index.html

For 10gR2

If you are running Oracle 10gR2, then use the 10gR2 Instant Client. At the time this document was created, the current version for Linux X86 is 10.2.0.4, oracle-instantclient-basic-10.2.0.4-1.i386.zip (34,687,861 bytes), and oracle-instantclient-sqlplus-10.2.0.4-1.i386.zip (744,730 bytes). Place the downloaded files in the /usr/local/src/oracle/instantclient/ directory.

 
Changed:
<
<
For 10gR2, the current versions are, oracle-instantclient-basic-10.2.0.4-1.i386.zip (34,687,861 bytes), and oracle-instantclient-sqlplus-10.2.0.4-1.i386.zip (744,730 bytes)
>
>
For 11g
 
Changed:
<
<
For 11g, the current versions are, basic.zip (42,285,643 bytes), and sqlplus.zip (784,417 bytes)
>
>
If you are running Oracle 11g, then use the 11g Instant Client. At the time this document was created, the current version is 11.1.0.6.0 , basic.zip (42,285,643 bytes), and sqlplus.zip (784,417 bytes). Place the downloaded files in the /usr/local/src/oracle/instantclient/ directory, then unzip them.
 
Changed:
<
<
Place the basic and sqlplus zipped files into /usr/local/src/oracle/instantclient/, and unzip them:
>
>

Place the basic and sqlplus zipped files into /usr/local/src/oracle/instantclient/, and unzip them:

 
[root@tubes instantclient]# pwd

Line: 85 to 95
 -rw-rw-r-- 1 root root 242 Feb 17 03:58 SQLPLUS_README [root@tubes instantclient]#
Added:
>
>

Place unzipped Oracle Instant Client files into permanent installation target directory.

 Now move the unzipped directory (instantclient_10_2) that contains both the basic and SQL*Plus files from the Oracle Instant Client, into the desired permanent directory. In my example, I'm using /usr/local/, so that the Oracle files will be in a directory /usr/local/instantclient_10_2/.
[root@tubes instantclient]# pwd

Line: 103 to 115
 appx appx.tgz basic.zip bin etc games include instantclient_10_2 lib libexec sbin share src [root@tubes instantclient]#
Added:
>
>

Configure the operating system's dynamic linker run time bindings

 Now we must register the Oracle Instant Client library files with the system to make the shared library's path known. I'm going to use ldconfig.
[root@tubes instantclient]# ldconfig -v|grep libclntsh

Line: 116 to 130
 /usr/local/instantclient_10_2/ [root@tubes instantclient]#
Added:
>
>

Build cache used by the operating system's run-time linker

 Now, let's rebuild the ldconfig cache, and verify that the library's are available system wide.
[root@tubes instantclient]# ldconfig

Line: 125 to 141
 /usr/local/instantclient_10_2: [root@tubes instantclient]#
Added:
>
>

Identify version of libclntsh.so that is included with downloaded Oracle Instant Client bundle

 APPX needs to know the name of the Oracle libclntsh.so file on your system. This file name changes from version to version. We must now identify the libclntsh file name that was distributed in the Oracle Instant Client bundle. Look inside the instantclient directory for a file that begins with libclntsh. To show you examples of Oracle Instant Client 10.2 and Oracle Instant Client 11.1, I have installed both versions in /usr/local/.
[joe@tubes instantclient_10_2]$ ls -la /usr/local/instantclient_1*/libclnt*

Line: 134 to 152
  As you can see my libclntsh files are libclntsh.so.10.1, which came bundled with the Oracle Instant Client 10.2 Basic bundle, and libclntsh.so.11.1, which came bundled with the Oracle Instant Client 11.1 Basic bundle.
Changed:
<
<
To let APPX know the version of the Instant client you have installed, perform just one of the following two options:
>
>
To let APPX know the version of the Instant client you have installed, perform just one of the following two options:
Create libclntsh.so symbolic link and set the APPX_OCI_DIR environment variable
 
  • I can now either create a symbolic link named libclntsh.so that points to the version I want to use and set the APPX_OCI_DIR environment variable equal to the location of the Oracle Instant Client files:

Line: 150 to 170
 APPX_OCI_DIR=/usr/local/instantclient_10_2/ [root@tubes appx]#
Added:
>
>

Set APPX_OCI_LIB
 
  • Or I can set an APPX environment variable equal to the name of the file. First let's see if it is set in the %APPXPATH%/appx.env file:


Line: 162 to 187
 APPX_OCI_LIB=libclntsh.so.10.1 [root@tubes appx]#
Added:
>
>

Use the Oracle Instant Client's version of SQL*Plus to verify connectify to Oracle.

 Now let's verify that we can connect to Oracle using Oracle's SQL*Plus tool. I'm going to use the following parameters for my example, be sure and use values that are correct for your Oracle instance. user=scott, password=password, server=tubes, port=1521, and Oracle Instance=appx.
[root@tubes instantclient_10_2]# /usr/local/instantclient_10_2/sqlplus scott/password@tubes:1521/appx

Line: 246 to 274
 With the Partitioning, OLAP and Data Mining options [root@tubes instantclient_10_2]#
Added:
>
>

Configure APPX FMS settings

 Well, that looks good. Let's configure our FMS settings inside APPX and make a connection!

  • In APPX, Go to System Administration, then File Management, then FMS Groups.
Line: 266 to 296
 
  • Enter the Oracle account's password.
oracle-fms-06.jpg
Deleted:
<
<
Some environment variables to keep in mind.
  • APPX
    • APPX_OCI_DIR
    • APPX_OCI_LIB
    • APPX_OCI_LIBS
    • APPX_SS_LOG
    • APPX_SS_CODE
    • APPX_SQL_CMD=/usr/local/appx/appx_sql_cmd.log
    • APPX_DBG_CODE=0xFFFFFFFF
  • Oracle
    • ORACLE_SID
    • ORACLE_HOME
    • TNS_ADMIN
Some OS tools to aid in debugging
  • strace
  • ldd
 

ODBC

Changed:
<
<
  • MySQL 5.0.22
  • PostgreSQL 8.1.9
  • IBM DB/2
  • Microsoft SQL-Server (2000, 2005, 2008, Express)
>
>

MySQL 5.0.22

PostgreSQL 8.1.9

IBM DB/2

Microsoft SQL-Server

SQL Server 2000

SQL Server 2005

SQL Server 2008

SQL Server Express

Database connectivity debug tools

APPX Environment Variables

APPX_OCI_DIR

APPX_OCI_LIB

APPX_OCI_LIB

APPX_OCI_LIBS

APPX_SS_LOG

APPX_SS_CODE

APPX_SQL_CMD=/usr/local/appx/appx_sql_cmd.log

APPX_DBG_CODE=0xFFFFFFFF

Oracle

ORACLE_SID

ORACLE_HOME

TNS_ADMIN

Some OS tools to aid in debugging

strace

ldd

Bugs:

  1. Fixed - Bug Description 1.
  2. OPEN - Bug 2209 - Lengthen field FMS Group Options - Server Name.
 

Comments:

Changed:
<
<
_Read what other users have said about this page or add your own comments.
>
>
Read what other users have said about this page or add your own comments.
 
<--/commentPlugin-->
-- AlKalter - 04 Apr 2008

Revision 82008-06-05 - JoeOrtagus

Line: 1 to 1
 
META TOPICPARENT name="APPX43Features"

Database Interface Upgrades

Compatibility with newer versions of popular databases is among the many features of APPX 4.3.
Line: 6 to 6
 

Oracle

  • Oracle 10g R2 (10.2.0.1)
  • Oracle 11g
Changed:
<
<
The Oracle connectivity is provided by the Oracle Instant Client
>
>
The Oracle connectivity is provided by the Oracle Instant Client.
  Quick installation steps:
  • Install Oracle Instant Client Basic.
  • Make the Oracle Instant Client library files visible to the system with the ldconfig tool or it's equivalent.
Changed:
<
<
  • Set, in either the APPX Login Manager's daemon environment or the appx.env file, the APPX environment variable APPX_OCI_DIR to the directory containing the Oracle Instant Client library files.
>
>
  • Set, in either the APPX Login Manager's daemon environment or the appx.env file, the APPX environment variable APPX_OCI_LIB equal to the file name of the liblcntsh.so contained in the Oracle Instant Client library files (For example APPX_OCI_LIB=libclntsh.so.10.1).
  Detailed installation example:
Changed:
<
<
Here are the steps I used to make an Oracle connection with APPX 4.3.0 and Oracle 10gR2 on the same Red Hat Enterprise 5.1 32bit server.
>
>
Here are the steps I used to make connection with APPX 4.3.0 and Oracle 10gR2 with both installed on the same Red Hat Enterprise 5.1, 32 bit server.
 
Added:
>
>
I'm going to create a directory to place the zipped bundled Oracle Instant Client files. For my example, I'm going to use /usr/local/src/oracle/instantclient/.
 

Changed:
<
<
mkdir -p /usr/local/src/oracle/instantclient/ cd /usr/local/src/oracle/instantclient/
>
>
[root@tubes /]# mkdir -p /usr/local/src/oracle/instantclient/ [root@tubes /]# cd /usr/local/src/oracle/instantclient/ [root@tubes instantclient]#
  Download the Oracle Instant Client files for Linux. APPX requires at least the Basic package, but it is recommended that you grab the SQL*Plus package too for debugging.
Changed:
<
<
For 10gR2, oracle-instantclient-basic-10.2.0.4-1.i386.zip (34,687,861 bytes), and oracle-instantclient-sqlplus-10.2.0.4-1.i386.zip (744,730 bytes)
>
>
For 10gR2, the current versions are, oracle-instantclient-basic-10.2.0.4-1.i386.zip (34,687,861 bytes), and oracle-instantclient-sqlplus-10.2.0.4-1.i386.zip (744,730 bytes)
 
Changed:
<
<
For 11g, basic.zip (42,285,643 bytes), and sqlplus.zip (784,417 bytes)
>
>
For 11g, the current versions are, basic.zip (42,285,643 bytes), and sqlplus.zip (784,417 bytes)
  Place the basic and sqlplus zipped files into /usr/local/src/oracle/instantclient/, and unzip them:


Changed:
<
<
[root@tubes instantclient]# pwd /usr/local/src/oracle/instantclient/ [root@tubes instantclient]# ls -la
>
>
[root@tubes instantclient]# pwd /usr/local/src/oracle/instantclient [root@tubes instantclient]# ls -la
 total 34656
Changed:
<
<
drwxr-xr-x 2 root root 4096 Jun 4 08:41 . drwxr-xr-x 7 root root 4096 Jun 3 16:03 .. -rw-r--r-- 1 root root 34687861 Jun 3 16:03 oracle-instantclient-basic-10.2.0.4-1.i386.zip -rw-r--r-- 1 root root 744730 Jun 4 08:41 oracle-instantclient-sqlplus-10.2.0.4-1.i386.zip [root@tubes instantclient]# [root@tubes instantclient]# unzip oracle-instantclient-basic-10.2.0.4-1.i386.zip
>
>
drwxr-xr-x 2 root root 4096 Jun 5 15:01 . drwxr-xr-x 3 root root 4096 Jun 5 14:59 .. -rw-r--r-- 1 root root 34687861 Jun 5 15:01 oracle-instantclient-basic-10.2.0.4-1.i386.zip -rw-r--r-- 1 root root 744730 Jun 5 15:01 oracle-instantclient-sqlplus-10.2.0.4-1.i386.zip [root@tubes instantclient]# unzip oracle-instantclient-basic-10.2.0.4-1.i386.zip
 Archive: oracle-instantclient-basic-10.2.0.4-1.i386.zip inflating: instantclient_10_2/BASIC_README inflating: instantclient_10_2/classes12.jar
Line: 50 to 51
  inflating: instantclient_10_2/libociei.so inflating: instantclient_10_2/libocijdbc10.so inflating: instantclient_10_2/ojdbc14.jar
Changed:
<
<
[root@tubes instantclient]# unzip oracle-instantclient-sqlplus-10.2.0.4-1.i386.zip
>
>
[root@tubes instantclient]# unzip oracle-instantclient-sqlplus-10.2.0.4-1.i386.zip
 Archive: oracle-instantclient-sqlplus-10.2.0.4-1.i386.zip inflating: instantclient_10_2/SQLPLUS_README inflating: instantclient_10_2/glogin.sql inflating: instantclient_10_2/libsqlplus.so inflating: instantclient_10_2/libsqlplusic.so inflating: instantclient_10_2/sqlplus
Changed:
<
<
[root@tubes instantclient]# ls /usr/local appx bin etc games include lib libexec sbin share src
>
>
[root@tubes instantclient]# ls -la total 34660 drwxr-xr-x 3 root root 4096 Jun 5 15:01 . drwxr-xr-x 3 root root 4096 Jun 5 14:59 .. drwxr-xr-x 2 root root 4096 Jun 5 15:01 instantclient_10_2 -rw-r--r-- 1 root root 34687861 Jun 5 15:01 oracle-instantclient-basic-10.2.0.4-1.i386.zip -rw-r--r-- 1 root root 744730 Jun 5 15:01 oracle-instantclient-sqlplus-10.2.0.4-1.i386.zip [root@tubes instantclient]# ls -la instantclient_10_2/ total 102424 drwxr-xr-x 2 root root 4096 Jun 5 15:01 . drwxr-xr-x 3 root root 4096 Jun 5 15:01 .. -rw-rw-r-- 1 root root 238 Feb 17 03:57 BASIC_README -r--r--r-- 1 root root 1609607 Feb 17 03:57 classes12.jar -rwxrwxr-x 1 root root 67766 Feb 17 03:57 genezi -r--r--r-- 1 root root 1525 Feb 17 03:58 glogin.sql -rwxrwxr-x 1 root root 19076649 Feb 17 03:57 libclntsh.so.10.1 -r-xr-xr-x 1 root root 5656445 Feb 17 03:57 libnnz10.so -rwxrwxr-x 1 root root 1398244 Feb 17 03:57 libocci.so.10.1 -rwxrwxr-x 1 root root 72698427 Feb 17 03:57 libociei.so -r-xr-xr-x 1 root root 120443 Feb 17 03:57 libocijdbc10.so -r-xr-xr-x 1 root root 1434263 Feb 17 03:58 libsqlplusic.so -r-xr-xr-x 1 root root 1069221 Feb 17 03:58 libsqlplus.so -r--r--r-- 1 root root 1555682 Feb 17 03:57 ojdbc14.jar -r-xr-xr-x 1 root root 8903 Feb 17 03:58 sqlplus -rw-rw-r-- 1 root root 242 Feb 17 03:58 SQLPLUS_README [root@tubes instantclient]#
  Now move the unzipped directory (instantclient_10_2) that contains both the basic and SQL*Plus files from the Oracle Instant Client, into the desired permanent directory. In my example, I'm using /usr/local/, so that the Oracle files will be in a directory /usr/local/instantclient_10_2/.

Changed:
<
<
[root@tubes instantclient]# mv instantclient_10_2/ /usr/local/ [root@tubes instantclient]# ls /usr/local appx bin etc games include instantclient_10_2 lib libexec sbin share src
>
>
[root@tubes instantclient]# pwd /usr/local/src/oracle/instantclient [root@tubes instantclient]# ls -la total 34660 drwxr-xr-x 3 root root 4096 Jun 5 15:01 . drwxr-xr-x 3 root root 4096 Jun 5 14:59 .. drwxr-xr-x 2 root root 4096 Jun 5 15:01 instantclient_10_2 -rw-r--r-- 1 root root 34687861 Jun 5 15:01 oracle-instantclient-basic-10.2.0.4-1.i386.zip -rw-r--r-- 1 root root 744730 Jun 5 15:01 oracle-instantclient-sqlplus-10.2.0.4-1.i386.zip [root@tubes instantclient]# ls /usr/local/ appx appx.tgz basic.zip bin etc games include lib libexec sbin share src [root@tubes instantclient]# mv instantclient_10_2/ /usr/local/ [root@tubes instantclient]# ls /usr/local/ appx appx.tgz basic.zip bin etc games include instantclient_10_2 lib libexec sbin share src
 [root@tubes instantclient]#
Deleted:
<
<
[root@tubes local]# cd /usr/local/instantclient_10_2/
  Now we must register the Oracle Instant Client library files with the system to make the shared library's path known. I'm going to use ldconfig.

Changed:
<
<
[root@tubes instantclient_10_2]# cat /etc/ld.so.conf
>
>
[root@tubes instantclient]# ldconfig -v|grep libclntsh [root@tubes instantclient]# ldconfig -v|grep instant [root@tubes instantclient]# [root@tubes instantclient]# cat /etc/ld.so.conf
 include ld.so.conf.d/*.conf
Changed:
<
<
[root@tubes instantclient_10_2]# echo /usr/local/instantclient_10_2/ >> /etc/ld.so.conf [root@tubes instantclient_10_2]# cat /etc/ld.so.conf
>
>
[root@tubes instantclient]# echo /usr/local/instantclient_10_2/ >> /etc/ld.so.conf [root@tubes instantclient]# cat /etc/ld.so.conf
 include ld.so.conf.d/*.conf /usr/local/instantclient_10_2/
Changed:
<
<
[root@tubes instantclient_10_2]# ldconfig [root@tubes instantclient_10_2]# ldconfig -v|grep instant
>
>
[root@tubes instantclient]# Now, let's rebuild the ldconfig cache, and verify that the library's are available system wide.
[root@tubes instantclient]# ldconfig
[root@tubes instantclient]# ldconfig -v|grep libclntsh
 libclntsh.so.10.1 -> libclntsh.so.10.1
[root@tubes instantclient]# ldconfig -v|grep instant

 /usr/local/instantclient_10_2:
Changed:
<
<
[root@tubes instantclient_10_2]# ldconfig -v|grep libclnt libclntsh.so.10.1 -> libclntsh.so.10.1 [root@tubes instantclient_10_2]#
>
>
[root@tubes instantclient]#
 
Changed:
<
<
Now we must set the APPX environment variable APPX_OCI_DIR to the location that contains the Oracle Instant Client library files. Again, in our case that is /usr/local/instantclient_10_2/.
>
>
APPX needs to know the name of the Oracle libclntsh.so file on your system. This file name changes from version to version. We must now identify the libclntsh file name that was distributed in the Oracle Instant Client bundle. Look inside the instantclient directory for a file that begins with libclntsh. To show you examples of Oracle Instant Client 10.2 and Oracle Instant Client 11.1, I have installed both versions in /usr/local/.
 

Changed:
<
<
[root@tubes instantclient_10_2]# echo APPX_OCI_DIR=/usr/local/instantclient_10_2/ >> /usr/local/appx/data/appx.env [root@tubes instantclient_10_2]# tail /usr/local/appx/data/appx.env # # Setting APPX_UNIXIO_PROCS will cause Appx to include the current process name # in the logfile. # #APPX_UNIXIO_STATS=/tmp/file_stats #APPX_UNIXIO_PROCS=1 #APPX_MONITOR_KEY=12345 #APPX_MONITOR_SLOTS=100
>
>
[joe@tubes instantclient_10_2]$ ls -la /usr/local/instantclient_1*/libclnt* -rwxrwxrwx 1 root root 19076649 Feb 17 03:57 /usr/local/instantclient_10_2/libclntsh.so.10.1 -rwxrwxrwx 1 root root 35295891 Aug 1 2007 /usr/local/instantclient_11_1/libclntsh.so.11.1 [joe@tubes instantclient_10_2]$ As you can see my libclntsh files are libclntsh.so.10.1, which came bundled with the Oracle Instant Client 10.2 Basic bundle, and libclntsh.so.11.1, which came bundled with the Oracle Instant Client 11.1 Basic bundle.
 
Changed:
<
<
APPX_OCI_DIR=/usr/local/instantclient_10_2/
>
>
To let APPX know the version of the Instant client you have installed, perform just one of the following two options:

  • I can now either create a symbolic link named libclntsh.so that points to the version I want to use and set the APPX_OCI_DIR environment variable equal to the location of the Oracle Instant Client files:
[root@tubes appx]# cd /usr/local/instantclient_10_2/
[root@tubes instantclient_10_2]# ln -s /usr/local/instantclient_10_2/libclntsh.so.10.1 /usr/local/instantclient_10_2/libclntsh.so
[root@tubes appx]# ls -la /usr/local/instantclient_10_2/libclntsh.so
lrwxrwxrwx 1 root root 47 Jun  5 15:56 libclntsh.so -> /usr/local/instantclient_10_2/libclntsh.so.10.1
[root@tubes instantclient_10_2]# 
[root@tubes appx]# grep APPX_OCI_DIR /usr/local/appx/data/appx.env

 [root@tubes instantclient_10_2]#
Added:
>
>
[root@tubes appx]# echo APPX_OCI_DIR=/usr/local/instantclient_10_2/ >> /usr/local/appx/data/appx.env [root@tubes appx]# grep APPX_OCI_DIR /usr/local/appx/data/appx.env APPX_OCI_DIR=/usr/local/instantclient_10_2/ [root@tubes appx]#
  • Or I can set an APPX environment variable equal to the name of the file. First let's see if it is set in the %APPXPATH%/appx.env file:
 
Added:
>
>
[root@tubes appx]# 
[root@tubes appx]# grep APPX_OCI_LIB /usr/local/appx/data/appx.env
[root@tubes appx]# 
[root@tubes appx]# echo APPX_OCI_LIB=libclntsh.so.10.1 >> /usr/local/appx/data/appx.env
[root@tubes appx]# 
[root@tubes appx]# grep APPX_OCI_LIB /usr/local/appx/data/appx.env
APPX_OCI_LIB=libclntsh.so.10.1
[root@tubes appx]# 

 
Changed:
<
<
Now let's verify that we can connect using Oracle's SQL*Plus with user=scott, password=password, server=tubes, port=1521, and Oracle Instance=appx. Substitute your own values for instance, server, port, and user.
>
>
Now let's verify that we can connect to Oracle using Oracle's SQL*Plus tool. I'm going to use the following parameters for my example, be sure and use values that are correct for your Oracle instance. user=scott, password=password, server=tubes, port=1521, and Oracle Instance=appx.
 

Changed:
<
<
[root@tubes instantclient_10_2]# /usr/local/instantclient_10_2/sqlplus scott/password@tubes:1521/appx
>
>
[root@tubes instantclient_10_2]# /usr/local/instantclient_10_2/sqlplus scott/password@tubes:1521/appx
 SQL*Plus: Release 10.2.0.4.0 - Production on Wed Jun 4 09:17:55 2008
Deleted:
<
<
 Copyright (c) 1982, 2007, Oracle. All Rights Reserved.
Deleted:
<
<
 Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production With the Partitioning, OLAP and Data Mining options
Line: 112 to 170
 Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production With the Partitioning, OLAP and Data Mining options
Changed:
<
<
SQL> show all
>
>
SQL> show all
 appinfo is OFF and set to "SQL*Plus" arraysize 15 autocommit OFF
Line: 128 to 185
 concat "." (hex 2e) copycommit 0 COPYTYPECHECK is ON
Changed:
<
<
define "&" (hex 26)
>
>
define "&" (hex 26)
 describe DEPTH 1 LINENUM OFF INDENT ON echo OFF editfile "afiedt.buf"
Line: 147 to 204
 logsource "" long 80 longchunksize 80
Changed:
<
<
markup HTML OFF HEAD "SQL*Plus Report" BODY "" TABLE "border='1' width='90%' align='center' summary='Script output'" SPOOL OFF ENTMAP ON PREFORMAT OFF
>
>
markup HTML OFF HEAD "" BODY "" TABLE "border='1' width='90%' align='center' summary='Script output'" SPOOL OFF ENTMAP ON PREFORMAT OFF
 newpage 1 null "" numformat ""
Line: 168 to 224
 sqlblanklines OFF sqlcase MIXED sqlcode 0
Changed:
<
<
sqlcontinue "> "
>
>
sqlcontinue "> "
 sqlnumber ON sqlpluscompatibility 10.2.0 sqlprefix "#" (hex 23)
Changed:
<
<
sqlprompt "SQL> "
>
>
sqlprompt "SQL> "
 sqlterminator ";" (hex 3b) suffix "sql" tab ON
Line: 185 to 241
 USER is "SCOTT" verify ON wrap : lines will be wrapped
Changed:
<
<
SQL> quit
>
>
SQL> quit
 Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production With the Partitioning, OLAP and Data Mining options [root@tubes instantclient_10_2]#
Line: 189 to 245
 Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production With the Partitioning, OLAP and Data Mining options [root@tubes instantclient_10_2]#
Deleted:
<
<
 
Added:
>
>
Well, that looks good. Let's configure our FMS settings inside APPX and make a connection!

  • In APPX, Go to System Administration, then File Management, then FMS Groups.
oracle-fms-01.jpg

  • Create an FMS group with an appropriate name, and specify type 5.
oracle-fms-02.jpg

  • File in the Server Name and Table Naming Scheme in the FMS Group Attributes of your new FMS group.  The Server Name field has a format of ORACLE-HOST-NAME:ORACLE-PORT/ORACLE-SID. The Table Naming Scheme could be picked from the suggestions shown when clicking on the Hints button.
oracle-fms-03.jpg

  • Under Identities, define at least a default identity.
oracle-fms-04.jpg

  • Enter the Oracle account to use for the Default Identity, leave Realm empty.
oracle-fms-05.jpg

  • Enter the Oracle account's password.
oracle-fms-06.jpg

Some environment variables to keep in mind.

  • APPX
    • APPX_OCI_DIR
    • APPX_OCI_LIB
    • APPX_OCI_LIBS
    • APPX_SS_LOG
    • APPX_SS_CODE
    • APPX_SQL_CMD=/usr/local/appx/appx_sql_cmd.log
    • APPX_DBG_CODE=0xFFFFFFFF
  • Oracle
    • ORACLE_SID
    • ORACLE_HOME
    • TNS_ADMIN
Some OS tools to aid in debugging
  • strace
  • ldd
 

ODBC

Line: 200 to 292
 _Read what other users have said about this page or add your own comments.
<--/commentPlugin-->
-- AlKalter - 04 Apr 2008
Added:
>
>
META FILEATTACHMENT attachment="oracle-fms-01.jpg" attr="" comment="APPX System Administration, File Management, FMS Groups." date="1212700202" name="oracle-fms-01.jpg" path="oracle-fms-01.jpg" size="80062" stream="oracle-fms-01.jpg" user="Main.JoeOrtagus" version="2"
META FILEATTACHMENT attachment="oracle-fms-02.jpg" attr="" comment="Create FMS group name, and specify type of 5." date="1212700410" name="oracle-fms-02.jpg" path="oracle-fms-02.jpg" size="40473" stream="oracle-fms-02.jpg" user="Main.JoeOrtagus" version="1"
META FILEATTACHMENT attachment="oracle-fms-03.jpg" attr="" comment="Oracle server name, port and SID followed by Table naming scheme." date="1212700481" name="oracle-fms-03.jpg" path="oracle-fms-03.jpg" size="63525" stream="oracle-fms-03.jpg" user="Main.JoeOrtagus" version="1"
META FILEATTACHMENT attachment="oracle-fms-04.jpg" attr="" comment="Specify Identity or the Oracle account to login as." date="1212700571" name="oracle-fms-04.jpg" path="oracle-fms-04.jpg" size="48630" stream="oracle-fms-04.jpg" user="Main.JoeOrtagus" version="1"
META FILEATTACHMENT attachment="oracle-fms-05.jpg" attr="" comment="Enter the Oracle user ID here." date="1212700611" name="oracle-fms-05.jpg" path="oracle-fms-05.jpg" size="47115" stream="oracle-fms-05.jpg" user="Main.JoeOrtagus" version="1"
META FILEATTACHMENT attachment="oracle-fms-06.jpg" attr="" comment="Enter the Oracle password here." date="1212700660" name="oracle-fms-06.jpg" path="oracle-fms-06.jpg" size="51280" stream="oracle-fms-06.jpg" user="Main.JoeOrtagus" version="1"

Revision 72008-06-04 - JoeOrtagus

Line: 1 to 1
 
META TOPICPARENT name="APPX43Features"

Database Interface Upgrades

Compatibility with newer versions of popular databases is among the many features of APPX 4.3.
Line: 8 to 6
 

Oracle

  • Oracle 10g R2 (10.2.0.1)
  • Oracle 11g
Added:
>
>
The Oracle connectivity is provided by the Oracle Instant Client

Quick installation steps:

  • Install Oracle Instant Client Basic.
  • Make the Oracle Instant Client library files visible to the system with the ldconfig tool or it's equivalent.
  • Set, in either the APPX Login Manager's daemon environment or the appx.env file, the APPX environment variable APPX_OCI_DIR to the directory containing the Oracle Instant Client library files.

Detailed installation example:

Here are the steps I used to make an Oracle connection with APPX 4.3.0 and Oracle 10gR2 on the same Red Hat Enterprise 5.1 32bit server.

mkdir -p /usr/local/src/oracle/instantclient/ 
cd /usr/local/src/oracle/instantclient/ 
Download the Oracle Instant Client files for Linux. APPX requires at least the Basic package, but it is recommended that you grab the SQL*Plus package too for debugging.

For 10gR2, oracle-instantclient-basic-10.2.0.4-1.i386.zip (34,687,861 bytes), and oracle-instantclient-sqlplus-10.2.0.4-1.i386.zip (744,730 bytes)

For 11g, basic.zip (42,285,643 bytes), and sqlplus.zip (784,417 bytes)

Place the basic and sqlplus zipped files into /usr/local/src/oracle/instantclient/, and unzip them:

[root@tubes instantclient]# pwd
/usr/local/src/oracle/instantclient/
[root@tubes instantclient]# ls -la
total 34656
drwxr-xr-x 2 root root     4096 Jun  4 08:41 .
drwxr-xr-x 7 root root     4096 Jun  3 16:03 ..
-rw-r--r-- 1 root root 34687861 Jun  3 16:03 oracle-instantclient-basic-10.2.0.4-1.i386.zip
-rw-r--r-- 1 root root   744730 Jun  4 08:41 oracle-instantclient-sqlplus-10.2.0.4-1.i386.zip
[root@tubes instantclient]# 
[root@tubes instantclient]# unzip oracle-instantclient-basic-10.2.0.4-1.i386.zip 
Archive:  oracle-instantclient-basic-10.2.0.4-1.i386.zip
  inflating: instantclient_10_2/BASIC_README  
  inflating: instantclient_10_2/classes12.jar  
  inflating: instantclient_10_2/genezi  
  inflating: instantclient_10_2/libclntsh.so.10.1  
  inflating: instantclient_10_2/libnnz10.so  
  inflating: instantclient_10_2/libocci.so.10.1  
  inflating: instantclient_10_2/libociei.so  
  inflating: instantclient_10_2/libocijdbc10.so  
  inflating: instantclient_10_2/ojdbc14.jar  
[root@tubes instantclient]# unzip oracle-instantclient-sqlplus-10.2.0.4-1.i386.zip 
Archive:  oracle-instantclient-sqlplus-10.2.0.4-1.i386.zip
  inflating: instantclient_10_2/SQLPLUS_README  
  inflating: instantclient_10_2/glogin.sql  
  inflating: instantclient_10_2/libsqlplus.so  
  inflating: instantclient_10_2/libsqlplusic.so  
  inflating: instantclient_10_2/sqlplus  
[root@tubes instantclient]# ls /usr/local
appx  bin  etc  games  include  lib  libexec  sbin  share  src
Now move the unzipped directory (instantclient_10_2) that contains both the basic and SQL*Plus files from the Oracle Instant Client, into the desired permanent directory. In my example, I'm using /usr/local/, so that the Oracle files will be in a directory /usr/local/instantclient_10_2/.
[root@tubes instantclient]# mv instantclient_10_2/ /usr/local/
[root@tubes instantclient]# ls /usr/local
appx   bin  etc  games  include  instantclient_10_2  lib  libexec  sbin  share  src
[root@tubes instantclient]# 
[root@tubes local]# cd /usr/local/instantclient_10_2/
Now we must register the Oracle Instant Client library files with the system to make the shared library's path known. I'm going to use ldconfig.
[root@tubes instantclient_10_2]# cat /etc/ld.so.conf
include ld.so.conf.d/*.conf
[root@tubes instantclient_10_2]# echo /usr/local/instantclient_10_2/ >> /etc/ld.so.conf
[root@tubes instantclient_10_2]# cat /etc/ld.so.conf
include ld.so.conf.d/*.conf
/usr/local/instantclient_10_2/
[root@tubes instantclient_10_2]# ldconfig
[root@tubes instantclient_10_2]# ldconfig -v|grep instant
/usr/local/instantclient_10_2:
[root@tubes instantclient_10_2]# ldconfig -v|grep libclnt
	libclntsh.so.10.1 -> libclntsh.so.10.1
[root@tubes instantclient_10_2]# 
Now we must set the APPX environment variable APPX_OCI_DIR to the location that contains the Oracle Instant Client library files. Again, in our case that is /usr/local/instantclient_10_2/.
[root@tubes instantclient_10_2]# echo APPX_OCI_DIR=/usr/local/instantclient_10_2/ >> /usr/local/appx/data/appx.env
[root@tubes instantclient_10_2]# tail /usr/local/appx/data/appx.env
#
#  Setting APPX_UNIXIO_PROCS will cause Appx to include the current process name
#  in the logfile.
#
#APPX_UNIXIO_STATS=/tmp/file_stats
#APPX_UNIXIO_PROCS=1
#APPX_MONITOR_KEY=12345
#APPX_MONITOR_SLOTS=100

APPX_OCI_DIR=/usr/local/instantclient_10_2/
[root@tubes instantclient_10_2]# 

Now let's verify that we can connect using Oracle's SQL*Plus with user=scott, password=password, server=tubes, port=1521, and Oracle Instance=appx. Substitute your own values for instance, server, port, and user.
[root@tubes instantclient_10_2]# /usr/local/instantclient_10_2/sqlplus scott/password@tubes:1521/appx

SQL*Plus: Release 10.2.0.4.0 - Production on Wed Jun 4 09:17:55 2008

Copyright (c) 1982, 2007, Oracle.  All Rights Reserved.


Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options

SQL> show all
appinfo is OFF and set to "SQL*Plus"
arraysize 15
autocommit OFF
autoprint OFF
autorecovery OFF
autotrace OFF
blockterminator "." (hex 2e)
btitle OFF and is the first few characters of the next SELECT statement
cmdsep OFF
colsep " "
compatibility version NATIVE
concat "." (hex 2e)
copycommit 0
COPYTYPECHECK is ON
define "&" (hex 26)
describe DEPTH 1 LINENUM OFF INDENT ON
echo OFF
editfile "afiedt.buf"
embedded OFF
escape OFF
escchar OFF
FEEDBACK ON for 6 or more rows
flagger OFF
flush ON
heading ON
headsep "|" (hex 7c)
instance "local"
linesize 80
lno 14
loboffset 1
logsource ""
long 80
longchunksize 80
markup HTML OFF HEAD "SQL*Plus Report" BODY "" TABLE "border='1' width='90%' align='center' summary='Script output'" SPOOL OFF ENTMAP ON PREFORMAT OFF
newpage 1
null ""
numformat ""
numwidth 10
pagesize 14
PAUSE is OFF
pno 0
recsep WRAP
recsepchar " " (hex 20)
release 1002000100
repfooter OFF and is NULL
repheader OFF and is NULL
serveroutput OFF
shiftinout INVISIBLE
showmode OFF
spool OFF
sqlblanklines OFF
sqlcase MIXED
sqlcode 0
sqlcontinue "> "
sqlnumber ON
sqlpluscompatibility 10.2.0
sqlprefix "#" (hex 23)
sqlprompt "SQL> "
sqlterminator ";" (hex 3b)
suffix "sql"
tab ON
termout ON
timing OFF
trimout ON
trimspool OFF
ttitle OFF and is the first few characters of the next SELECT statement
underline "-" (hex 2d)
USER is "SCOTT"
verify ON
wrap : lines will be wrapped
SQL> quit
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
[root@tubes instantclient_10_2]# 

 

ODBC

Revision 62008-06-03 - JoeOrtagus

Line: 1 to 1
 
META TOPICPARENT name="APPX43Features"
Deleted:
<
<
 

Database Interface Upgrades

Compatibility with newer versions of popular databases is among the many features of APPX 4.3.
Line: 7 to 6
 

Oracle

Changed:
<
<
  • Oracle 10g R2 (10.2.0.1)
>
>
  • Oracle 10g R2 (10.2.0.1)
  • Oracle 11g
 

ODBC

Changed:
<
<
  • DB/2
  • SQL-Server

SQL-Server

>
>
  • IBM DB/2
  • Microsoft SQL-Server (2000, 2005, 2008, Express)
 

Comments:

Changed:
<
<
Read what other users have said about this page or add your own comments.
>
>
_Read what other users have said about this page or add your own comments.
 
<--/commentPlugin-->

-- AlKalter - 04 Apr 2008 \ No newline at end of file

Revision 52008-06-02 - JoeOrtagus

Line: 1 to 1
 
META TOPICPARENT name="APPX43Features"
Added:
>
>
 

Database Interface Upgrades

Compatibility with newer versions of popular databases is among the many features of APPX 4.3.
Line: 9 to 10
 
  • Oracle 10g R2 (10.2.0.1)

ODBC

Changed:
<
<
>
>
 

SQL-Server

Comments:

Revision 42008-06-02 - JoeOrtagus

Line: 1 to 1
 
META TOPICPARENT name="APPX43Features"
Deleted:
<
<
 

Database Interface Upgrades

Compatibility with newer versions of popular databases is among the many features of APPX 4.3.
Line: 7 to 6
 

Oracle

Added:
>
>
  • Oracle 10g R2 (10.2.0.1)
 

ODBC

Added:
>
>
 

SQL-Server

Comments:

Revision 32008-04-07 - AlKalter

Line: 1 to 1
 
META TOPICPARENT name="APPX43Features"
Added:
>
>
 

Database Interface Upgrades

Changed:
<
<
Compatibility with newer versions of popular databases is among the many features of APPX 4.3.
>
>
Compatibility with newer versions of popular databases is among the many features of APPX 4.3.
 

Oracle

ODBC

Added:
>
>

SQL-Server

 

Comments:

Read what other users have said about this page or add your own comments.

Revision 22008-04-04 - AlKalter

Line: 1 to 1
 
META TOPICPARENT name="APPX43Features"
Added:
>
>

Database Interface Upgrades

Compatibility with newer versions of popular databases is among the many features of APPX 4.3.
 
Added:
>
>
 
Added:
>
>

Oracle

ODBC

 
Added:
>
>

Comments:

Read what other users have said about this page or add your own comments.
<--/commentPlugin-->
 
Deleted:
<
<
-- AlKalter - 04 Apr 2008
 \ No newline at end of file
Added:
>
>
-- AlKalter - 04 Apr 2008

Revision 12008-04-04 - AlKalter

Line: 1 to 1
Added:
>
>
META TOPICPARENT name="APPX43Features"

-- AlKalter - 04 Apr 2008

 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2021 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback