In This Section:
Starting and Stopping Essbase Server
Starting and Stopping Applications
Starting and Stopping Databases
Communicating with Essbase Using SSL
Controlling Query Size and Duration
Table 131 lists the Essbase server and client executable files:
Table 131. Main Essbase Executable Files
Executable File[1] | Location | ||
---|---|---|---|
ESSBASEPATH/bin | |||
ESSBASEPATH/bin | |||
ESSBASEPATH/bin | |||
ESSBASEPATH/bin | |||
EPM_ORACLE_HOME/products/Essbase/eas/server/bin | |||
EPM_ORACLE_HOME/products/Essbase/eas/server/bin |
Launching the Agent executable file, essbase.exe, starts the Essbase Server Agent process. The Agent process starts and stops all applications and acts as the traffic coordinator for Essbase Server.
On the computer where Essbase Server is installed, the Agent is accessible only from the server console, which is the primary terminal, or monitor, connected to the server computer.
When you start Essbase Server in the foreground, the Agent becomes active in an operating system window. In the Agent window, you can view release and license information, enter login and administrative commands, and monitor the behavior of Essbase Server. On Windows, Essbase can be accessed only from the server console. On UNIX, a telnet session is used to access Essbase remotely.
When you start Essbase Server in the background, the terminal becomes free for other input, and the Agent activities are not visible in the terminal. See Starting Essbase Server as a Background Process.
The agent log is called the Essbase Server log. See Viewing the Essbase Server and Application Logs.
essbase.exe and esssvr.exe (ESSBASE and ESSSVR on UNIX) are multithreading and symmetric multiprocessing (SMP) applications. Multithreading ensures high performance in a client-server environment. SMP provides scalability when a single server computer hosts multiple Essbase applications. Essbase Server uses POSIX kernel threads, which are included in UNIX operating systems.
By default, the number of threads is based on the number of licensed ports, as shown in Table 132. The number of ports represents the number of concurrent connections that Essbase supports. Essbase provides one reserve port for the system administrator, which is used to log off users when all other ports are in use.
You can set the number of threads for the Agent or Essbase Server in the essbase.cfg file using the AGENTTHREADS, AGTSVRCONNECTIONS, and SERVERTHREADS configuration settings. See the Oracle Essbase Technical Reference.
Note: | Enabling hyperthreading on the computer on which Essbase Server runs is not recommended. |
To display a list of available Agent commands, press Enter in the operating system window where you started Essbase Server in the foreground.
Table 133 describes each Agent command, and the MaxL, ESSCMD, or Administration Services equivalents:
Table 133. Agent Commands and MaxL, ESSCMD, or Administration Services Equivalents
Displays a list of users connected to the Essbase Server. The following information is displayed: | ||
Displays the number of ports installed on the Essbase Server and the number of ports in use. | ||
Disconnects a user from the Essbase Server and frees a port. | ||
Changes the system password that is required to start the Essbase Server. | ||
Enables compaction of the security file when the Agent is running. See Managing Essbase Security File Fragmentation. | ||
Dumps information from the Essbase security file (essbase.sec) to a specified file in text (ASCII) format. If you do not supply a path with the filename, the file is saved to the ARBORPATH/bin directory. This command requires the Essbase system password. Note: You cannot use the DUMP command against an Essbase Server that is run as a service. If the server is running as a service, use the Export Security File command in Administration Services or the export security_file MaxL statement. | See Exporting the Essbase Security File to a Readable Format. Note: You can use the export security file command against an Essbase Server that is run as a service. | |
Lists all valid Agent commands and their respective functions. Same as pressing Enter. | ||
During installation, Oracle Hyperion Enterprise Performance Management System Installer, Fusion Edition installs OPMN and registers Essbase Server for OPMN. OPMN manages the Essbase Agent, which manages the Essbase Server. Essbase Server start and stop scripts redirect to OPMN. See Managing Essbase Using OPMN.
To start Essbase Server, you must have Administrator permissions.
See:
You can specify the host name to which Essbase binds by using the ESSBASESERVERHOSTNAME configuration setting in essbase.cfg. If no host name is specified, Essbase uses a system API to get the host name. Using host names enables you to partition network traffic on all the network interfaces of a computer. This is useful on computers with single network cards and those with multiple NIC cards.
Starting Essbase Server in the foreground starts the Agent in an operating system window, in which you can enter commands and monitor Essbase Server activities.
When starting an Essbase Server for the first time (for example, after installing Essbase), the administrator enters a company name, Essbase Server system administrator user ID, and a system password. This information is saved in the Essbase security file (essbase.sec). As long as essbase.sec is present in your Essbase installation, you are not prompted to provide this information when subsequently starting Essbase Server.
Note: | Only the registered Essbase administrator who started an Essbase Server for the first time can subsequently start the same Essbase Server. To register a new administrator user, you must remove the Essbase security file (essbase.sec), and all log (.log) and application (.app) files, and restart Essbase Server. Then a new administrator user ID and password is required to register a new administrator user. |
Essbase Server start and stop scripts redirect to Oracle Process Manager and Notification Server. See Starting and Stopping Essbase Using OPMN.
To start Essbase Server in the foreground, use a method for the operating system on which Essbase Server runs (these examples assume that Essbase Server had been started at least once before):
A system administrator may run Essbase Server as a background process when working in batch mode (for example, when using a UNIX shell script or Windows .bat file to run multiple tasks, such as starting and logging onto Essbase Server, loading data, and running calculation scripts and report).
Also, on Windows, running Essbase Server as a background process allows a system administrator to use Windows settings to improve performance of applications running in the foreground.
If you start Essbase Server in the background, these conditions apply:
You cannot shut down Essbase Server from the Agent. You must use MaxL or ESSCMD.
You cannot access the application server window to monitor a running application. You must access this information from the application log (ARBORPATH/app/appname/appname.log).
You cannot monitor Essbase Server activity using the Agent. You must access this information from the Essbase Server log (EPM_ORACLE_HOME/logs/essbase/essbase.log).
You can run instances of the Agent as Windows services. You must first use EPM System Configurator to register the service. See the Oracle Hyperion Enterprise Performance Management System Installation and Configuration Guide.
To start Essbase Server in the background on UNIX or on Windows systems utilizing a UNIX-like shell such as MKS, enter the following command at a command prompt:
startEssbase.sh -b &
Using the ampersand (&) at the end of the command is optional; however, if you do not use “&,” the command prompt is not returned after Essbase Server is started.
On Windows, unless you are using a UNIX-like shell such as MKS, the ampersand (&) has no effect. Essbase Server starts in the background, but control of the command prompt is not returned. You may need to press the Enter key twice before the command prompt returns. |
On UNIX systems, to find out if Essbase Server is already running in the background, enter the following command at a command prompt:
ps -ef | grep ESS
If Essbase Server is running in the background, it appears in the process list.
On HP-UX and Solaris, the ps -ef utility creates a process listing that includes the system password.
Note: | On IBM AIX, the Essbase Server system password is hidden automatically. |
To hide the Essbase Server system password:
Create a shell script, named essbase.secure, that contains these commands:
#!/bin/sh PASS=$1 ESSBASE -b -secure << EOF & ${PASS} EOF
To launch the Agent, use this command:
essbase.secure password
To have the script to return to a command prompt without manually entering a carriage return or to imbed the script within a larger script, execute the script with this command:
essbase.secure &
(Optional) To redirect the standard output to a file named nohup.out, which is useful when running the script in a nonactive terminal session, use this command:
nohup essbase.secure &
You can change the password that is required to start Essbase Server.
Changing the system password does not change the connection password for the Essbase system Administrator. |
To change the Essbase Server system password, use a tool:
Tool | Topic | Location |
---|---|---|
Agent | password | Enter the Agent command at the command prompt in the Essbase Server console window. Enter the current system password. Enter the new system password; then re-enter it. |
MaxL | alter user system_administrator set password password | Oracle Essbase Technical Reference |
ESSCMD | SETPASSWORD | Oracle Essbase Technical Reference |
You need Administrator permissions to stop or shut down Essbase Server.
If you stop the Agent by closing the Agent window or by pressing Ctrl + C, the next time you start the database, Essbase rolls back any transactions that were in progress. See Rollback with Committed Access or Rollback with Uncommitted Access.
When an application is started, Essbase loads it and all associated databases into memory on the Essbase Server computer. All client requests for data, such as data loads, calculations, reports, and spreadsheet lock and sends, are then handled through the application server process (ESSSVR). The application server is always started by the Agent.
Multiple application servers can run on Essbase Server concurrently. On Windows, a separate window opens for each ESSSVR process that is running. If an application contains multiple running databases, all databases are managed by the one application server.
When you stop an application, Essbase unloads all information and databases from memory on the Essbase Server computer and closes the application server process.
When you start an application, the following actions can happen:
To start an application, use a tool:
The application starts and, if you are running on Windows, opens the application server window on the Essbase Server computer.
You can also start an application by completing any of these actions:
Starting a database within an application. See Starting a Database.
Saving an outline to Essbase Server. (Opening an outline does not start an application.)
You can set options that control how applications start:
startup (Allow user to start application): If an application is stopped, and a user attempts to retrieve data from any databases within that application, the application starts on the Essbase Server computer automatically.
autostartup (Start application when Essbase starts): Users may experience better initial performance when they make requests of databases in that application, because the application and databases are already loaded into memory on the Essbase Server computer.
Stop applications properly to prevent the databases within them from becoming corrupt. When you stop an application, transactions may be running. If you stop an application using any of the proper methods (see the following table), the application does not stop if a calculation or data load is in progress. Instead, Essbase displays a message in the Agent console.
If you stop the Agent by closing the server console window or by pressing Ctrl+C, the application stops, and the next time you start the application, Essbase rolls back any transactions that were in progress. See Rollback with Committed Access or Rollback with Uncommitted Access.
Sometimes, stopping the application server process improperly, by closing the application server window, is necessary; for example, if the application server is corrupted and is not processing client requests.
To stop the application improperly, use a method for the operating system on which Essbase Server runs:
For UNIX platforms, kill the ESSSVR process.
You can use the ps output to identify individual applications. If an application freezes, you can stop the application by using this command:
kill -9 <pid>
For Windows, choose a method:
Perform a Windows operating system End Task.
Windows does not display process IDs for individual Essbase applications—all of the running Essbase applications are displayed as undifferentiated ESSSVR processes, preventing you from stopping a single application in the event that the application freezes.
You can find the process ID for individual application servers in the EPM_ORACLE_HOME/logs/essbase/essbase.log file. When the server starts, a line like the following is displayed in the Essbase Server log:
Application [Sample] started with process id [225]
Starting a database loads the database into memory on the Essbase Server computer. Stopping a database unloads all database information from memory.
When Essbase starts a database and loads it to memory, the entire index cache for that database is allocated in memory automatically. The data cache and data file cache are allocated as blocks requested from Essbase clients.
When you start an application, Essbase loads the application and its databases into memory on the Essbase Server computer. When you start a database from an application that is not started, the application is loaded into memory along with all its related databases.
Stopping a database unloads all data from memory and commits any updated data to disk. If a database is stopped and a user attempts to retrieve data from it, the database starts on Essbase Server automatically, without any explicit commands issued.
When you stop a database, transactions may be currently running. If you stop a database using any of the proper methods (see the following table), the database does not stop if a calculation or data load is in progress. Instead, Essbase displays a message in the server console window.
If you stop the Agent by closing the server console window or by pressing Ctrl+C, the database stops, and the next time you start the database, Essbase rolls back any transactions that were in progress. See Rollback with Committed Access or Rollback with Uncommitted Access.
The Agent enables you to manage ports on Essbase Server.
You can view a list of users that are connected to Essbase Server at any given time, the number of ports available, and the number of connections.
To view a list of users connected to Essbase Server, use a tool:
Tool | Topic | Location |
---|---|---|
Agent | USERS | Enter the Agent command at the command prompt in the Essbase Server console window. |
Administration Services | Viewing Essbase Server Users and Groups | Oracle Essbase Administration Services Online Help |
MaxL | display user | Oracle Essbase Technical Reference |
ESSCMD | LISTUSERS | Oracle Essbase Technical Reference |
To change the default port values used by the Agent, you must set one or more of these configuration settings:
SERVERPORTBEGIN specifies the first port number the Agent on a computer tries to use for its first server process.
SERVERPORTEND specifies the highest value the Agent tries to use for a port when it tries to start a server process. If the value is unavailable, the server process fails.
PORTINC specifies the value of the increment in between port numbers used by the Agent.
You may want to change the default value. Two possible reasons:
You may want to install a second instance of Essbase Server on a computer to facilitate testing. You can use Oracle's Hyperion Enterprise Performance Management System Configurator to assign the second Essbase Server instance to a different port than the first. See the Oracle Hyperion Enterprise Performance Management System Installation and Configuration Guide.
If you need to change one or more of the default values associated with Agent and server ports, or to expand port ranges using MaxL, see the Oracle Essbase Technical Reference.
You can enable Essbase to log, at a specified interval, the number of ports being used. By analyzing the information in the log, you can monitor port utilization and identify a need for more ports before users are unable to connect.
To enable Essbase Server to check port use statistics and write those statistics to the Essbase Server log, use the PORTUSAGELOGINTERVAL configuration setting:
PORTUSAGELOGINTERVAL n
where n represents the number of minutes between each check of the number of ports in use. The value of n can be any whole number from 1 to 60, with 5 being the recommended minimum and default value. Essbase ignores any portion of a nonwhole number. For example, Essbase evaluates 2.5 as 2 minutes. Statistics are written to the Essbase Server log immediately after each check. The log file will resemble the following output:
[Mon Apr 22 00:48:50 2003]Local/ESSBASE0///Info(1056214) [3] ports in use, [10] ports allowed
Essbase Administration Server has several configurable communication ports, which are different from Essbase Server ports. See About Essbase Administration Server.
Essbase supports the Secure Socket Layer (SSL) protocol for all client-to-server and server-to-server communication. SSL allows Essbase to communicate unilaterally across a network with Essbase clients, including Oracle Hyperion Provider Services, Administration Services, and Oracle Essbase Studio, while preventing eavesdropping and tampering. End-point authentication and communications occur confidentiality over the Internet using CipherSuite cryptography.
These configuration settings supply parameters that enable SSL communication:
AGENTSECUREPORT
CLIENTPREFERREDMODE
ENABLECLEARMODE
ENABLESECUREMODE
NETSSLHANDSHAKETIMEOUT
SSLCIPHERSUITES
WALLETPATH
The following considerations apply when partitioning in secure (SSL) mode:
The partition source and target must have the same security protocol; for example, both or neither use SSL.
To enable Essbase to use SSL connectivity, you must set ENABLESECUREMODE to TRUE.
Consider setting CLIENTPREFERREDMODE to SECURE.
If CLIENTPREFERREDMODE is not set, or is set to FALSE, but ENABLESECUREMODE is set to TRUE, you can securely create and refresh partitions in MaxL by adding :secure to the HOST-NAME string. For example,
login esbuser esbpassword on “localhost:6423:secure”;
The following considerations apply when using location aliases in secure (SSL) mode:
To enable Essbase to use SSL connectivity, you must set ENABLESECUREMODE to TRUE.
If the location alias is being set up to a secure port, you must append :secure to the server name specification. For example, using MaxL,
create location alias EasternDB from Sample.Basic to East.Sales at Easthost:6423:secure as User1 identified by password1;
For more information on using SSL with Essbase, see the Oracle Hyperion Enterprise Performance Management System Security Administration Guide.
Users may unintentionally request information that is so large or so complex to retrieve that the query will slow performance or fail to complete properly. Use the QRYGOVEXECTIME and QRYGOVEXECBLK configuration settings, referred to as query governors, to control query size or duration:
You can apply these settings to all the applications and databases on Essbase Server, to all the databases on a single application, or to one database. See the Oracle Essbase Technical Reference.
Increasing the maximum possible threads between Essbase Server and the Agent allows multiple users to log on and connect to an application and database simultaneously.
Use the AGENTTHREADS and AGTSVRCONNECTIONS configuration settings to control the maximum number of threads created to perform the initial connection to Essbase Server:
AGTSVRCONNECTIONS maximum_number_of_threads
Keep the maximum_number_of_threads value for AGTSVRCONNECTIONS equal to or less than the value for AGENTTHREADS to avoid wasting resources. Each connection requires one thread each from the server and Agent, so there is no need for higher values for AGTSVRCONNECTIONS. See the Oracle Essbase Technical Reference.
Use the MAXLOGIN configuration setting to limit the maximum number of simultaneous user session connections to Essbase Server. This number includes multiple instances of the same user. For example, one user with five open Excel worksheets connected to the same Essbase Server uses one port but five sessions.
You can adjust the value of MAXLOGIN to match computer resources or to more closely manage concurrent ports and user sessions. A concurrent port is used for each unique combination of client computer, Essbase Server, and login name. See the Oracle Essbase Technical Reference.