Download View this document as PDF
Transcript
CHAPTER 8 1 Troubleshooting If an individual database fails to upgrade, you can retry that upgrade manually. Begin by correcting the problem that caused the failure. Output from the upgrade utility should identify the problem. The most common cause of failure is running out of some resource: space (either data or log), locks, auxiliary scan descriptors. You can add space to the database using the alter database command. Other resource failures may be correctable by changing the server’s configuration via the sp_configure stored procedure. If an upgrade failure leaves a database offline, and the failure can only be corrected by making data changes in the database, you can gain access to the failed database by using isql or a similar program to connect to the affected server as user “sa” and issuing this command: dbcc traceon(990) Note This trace flag grants access only to user “sa”. It is not sufficient to use an account having “sa_role”. If you have disabled the “sa” login, you must re-enable it to get access using this method. Having set this trace flag, user “sa” can now use the offline database and make the necessary changes to correct the upgrade failure. To restart a failed upgrade, use the online database command: online database <failed_db_name> The server restarts that database’s upgrade from the point of failure. 2 If the failure occurs after all databases have been upgraded, or if a failure somehow causes the upgrade utility to crash, you can re-run the utility manually. First diagnose and correct the failure, then run the upgrade utility: $SYBASE/$SYBASE_ASE/upgrade/upgrade When restarted in this way, the upgrade process says it is “verifying” the upgrade rather than “starting” it, but it makes all the same checks as for the original upgrade. To verify that a database has upgraded successfully, you can check any database’s upgrade status using the online database command. If any upgrade is required for a database, this command performs it. You may also use a procedure such as this to check all databases at a given installation: declare @dbname varchar(255) select @dbname = min(name) from master..sysdatabases Installation Guide 125