Connections to a non-root installation (UNIX, Linux)

A non-root installation of a database server runs without user root or user onedb privileges. Installation and user administration of a non-root server can be easier, but this type of installation does not support all product features.

A user who installs the database server without user root privileges performs a non-root installation. The user who completes non-root installation is the DBSA and creates and controls the other user accounts that can connect to the server. Installation and administration of the server does not depend on the root-level privileges associated with user onedb and group onedb.

The non-root server cannot authenticate users based on system calls to the OS level. The DBSA of the installation must create internal users to grant database server access to other users.

Consider non-root installation for easier product setup and embeddability, or for security in an environment that does not require high scalability. This type of installation might be preferable in environments where access to root privileges is rigorously controlled and it is difficult to obtain permission to create accounts like user onedb and group onedb.
Important: See "Non-root installation" in the HCL OneDB™ Installation GuideHCL OneDB Installation Guide for UNIX™, Linux™, and Mac OS X for important information about product features not supported with a server running without root privileges.

Shared-memory and stream-pipe connections to a non-root installation

You must include the cfd option in the sqlhosts file to use shared-memory and stream-pipe connections on servers that have a non-root installation of HCL OneDB.

For root installations of the database server, communication files required for shared-memory and stream-pipe connections are stored in and accessed from the /INFORMIXTMP directory, a location where a non-root installation of HCL OneDB does not have write permission.

Use the cfd option in the sqlhosts file to set the directory where you want to store the communication files necessary for shared-memory and stream-pipe connections. Non-root installations of HCL OneDB now store communication files in the $ONEDB_HOME/etcdirectory by default. Clients connecting to the server now check the $ONEDB_HOME/etc directory if communication files are not found in the /INFORMIXTMP directory.

Non-root installations of the database server do not have permission to write to the /INFORMIXTMP directory, so shared-memory and stream-pipe connection communication files are not written to the $ONEDB_HOME/etc directory if no communication files directory is specified as an option in the sqlhosts file.

Clients connecting to the HCL OneDB server first check the /INFORMIXTMP directory for communication files before checking the $ONEDB_HOME/etc directory for communication files. If the client and server for a non-root installation of HCL OneDB are located in different locations, then the communication files are not in the /INFORMIXTMP or $ONEDB_HOME/etc directories, and the connection fails. In this case, you must specify the cfd value in the sqlhosts file for the connection attempt to succeed.

Distributed queries on non-root installations

You can perform distributed queries on non-root server installations after you set the REMOTE_USERS_CFG or REMOTE_SERVER_CFG configuration parameter. The REMOTE_USERS_CFG configuration parameter specifies an alternative to using ~/.rhosts files for listing trusted users on a remote server. REMOTE_SERVER_CFG configuration parameter specifies an alternative to using the etc/hosts.equiv file for listing trusted remote hosts.