Upgrade all multiplex databases to version 12.5 before following the instructions in this section.
Sybase Central uses default settings for server start-up switches from the params.cfg file. The default values of some start-up options, such as those that control cache sizes, may be insufficient for migrating large multiplex servers. For best results, create a configuration file with higher values for switches such as -c, -cl and -ch. Specify this file explicitly when starting the multiplex server for database upgrade. For details about configuration files, see “Configuring the Sybase IQ Server”.
To upgrade multiplex databases from 12.5 to 12.7, perform the steps in that follow on each server in the multiplex.
To upgrade 12.6 databases, see “Upgrading 12.6 multiplex databases to 12.7”.
Wherever backup is recommended, you should back up the write server and any query servers where you created an IQ Local Store.
Upgrading 12.5 multiplex databases
On UNIX systems, you may optionally install 12.7 Sybase IQ software on all the servers in a separate directory from the previously installed version before starting the upgrade process. Once the separate directories are ready, follow the steps below.
Shut down all the servers.
Install Sybase IQ 12.7 on the write server’s system. (See Chapter 1.) On UNIX, you can do this before shutting down the servers. On Windows, installation forces a system reboot.
If you plan to run only 12.7 servers, skip to Step 4. To run 12.5 servers in the same multiplex as 12.7, install a 12.7 agent on the write server. The 12.7 IQ plug-in is compatible with 12.5 servers, but you must start 12.5 servers with a 12.5 agent and 12.7 servers with a 12.7 agent.
To install the standalone IQ agent where Sybase IQ 12.5 is installed, run setup.exe. The install procedure detects the existing version and displays the Optional Agent Install screen.
Choose the option Install a standalone Sybase IQ 12.7 Agent (Alt+A), and click Next.
Remove any -n <servername> switch in a params.cfg file used to start a multiplex database.
(Mixed-version multiplex only) Edit the params.cfg file in the database directory on each query server to set the following switch(es):
Set -iqnomain 1
If the query server has local stores, set -iqnolocalreplay 1
You must set these switches before you run ALTER DATABASE UPGRADE and they must still be set when you synchronize query servers.
Start the write server in single node mode using the -iqmpx_sn 1 switch. If you use a server name different from the write server name, you must also use the override switch, -iqmpx_ov 1.
Use a unique server name that you have not previously used, as follows:
start_asiq @params.cfg -n <upgrade_server> -iqmpx_sn 1 -x 'tcpip{port=<writer_port>}' <dbfile>
You may use the write server’s normal TCPIP port.
Disconnect Sybase Central and SQL Remote from the database.
Sybase IQ 12.6 and higher releases enforce column and table CHECK constraints that were previously unenforced, but only on inserts, updates, and loads of new data. Before you upgrade the database, Sybase suggests that you follow the procedure in “Preserving check constraints before database upgrade” to record and recreate constraints.
Connect to the server to be upgraded with dbisqlc or dbisql as DBA. Make sure that no other users connect during the upgrade process. See “Upgrading databases” for recommended syntax to restrict users.
Make sure that you have performed the preceding steps in this chapter and installed any available EBFs. For details, see “Finding the latest information on EBFs and software maintenance”.
Upgrade the database by issuing the following command:
ALTER DATABASE UPGRADE
If the database you are upgrading was created with the Java options set off, append the keywords JAVA OFF JCONNECT OFF to the preceding command. For more about the ALTER DATABASE UPGRADE statement, see the Sybase IQ Reference Manual.
The defaults for MAIN_RESERVED_DBSPACE_MB and TEMP_RESERVED_DBSPACE_MB were increased in version 12.5 for newly created databases. If these options are set to less than the 200MB in your database, set the options to 200MB or 50% of the size of the last dbspace before or immediately after upgrading your database.
If your multiplex has a write server with no query servers, issue the following statement to convert to a non-multiplex database.
call sp_iqendmpx();
After you run sp_iqendmpx, you have a non-multiplex database. Skip the remaining steps in this procedure, see “Enforcing referential integrity”, and complete the remaining tasks in “Upgrading non-multiplex databases” instead.
Reset the SQL Remote configuration by issuing the SQL statements:
call sp_iqmpxdroppublication()
call sp_iqmpxcreatepublication()
You can check the multiplex configuration by issuing:
call sp_iqmpxvalidate()
It should indicate that dbremote is not running for this server, but there should be no other errors.
Install Sybase IQ 12.7 on each query server system, if not done in advance. Windows systems reboot as part of software installation.
Start Sybase Central, connect, and run Synchronize from the write server.
(Mixed-version multiplex only) Edit the params.cfg file in the database directory on the upgraded query server as follows:
Remove the -iqnomain 1 switch
If the query server has local stores, remove the -iqnolocalreplay 1 switch
Restart the query server that you just upgraded.
Perform the ALTER DATABASE UPGRADE and subsequent steps on each query server in the multiplex.
All upgraded servers in the multiplex environment are now running version 12.7.
Because the shared top-level directory is not a good location for database files, you should move these files to directories local to each server in the multiplex environment. For instructions, see the section “Migration” in Chapter 14, “Data Backup, Recovery, and Archiving” in the Sybase IQ System Administration Guide. After you move all database files, you can remove the shared top-level directory from the server systems if desired.
See also “After you upgrade” for other items you may want to check after upgrading.