Databases

Invalid RSI Locater

If the RSI locaters at the primary and replicate Replication Servers are not identical, then the primary Replication Server might delete messages from its stable queue at an incorrect location and invalidate the RSI locater at the replicate Replication Server. RSI locaters must be identical. If they are not identical you need to reset the correct entry in the rs_locater system table in the Replication Server System Database (RSSD) (more…)

Starting ASE after a system kill

Killing ASE with a SIGKILL is obviously not a good idea but you can run out of other options. Data-loss can and will happen because no checkpoint will be given to the database. Should it unavoidable you need to check some actions before starting such as the shared memory segments and files. The shared memory files are located under the $SYBASE/$SYBASE_ASE directory with the SERVER_NAME.krg file name. The sybase process should be able to read and write in this file. Shared memory segments also need to be cleaned up. These can be identified with ipcs | grep sybase and ipcrm -M <KEY&gt...

Mysql: Innodb architecture

This schema gives a nice overview of the InnoDB architecture used by Mysql, MariaDb and Percona. I keep this near when I am running performance tweaks on my databases. The flows and bottle necks are much more clear when you have a visual overview of the architecture.

Sybase Replicated database copy

Refreshing a Primary Database of a Replication setup into DEV/QA. When we load a replicated database into another ASE server, it will not jump online due to the secondary truncation point that was set in the source database. In other words after the load is completed, when you issue the online database command it will  fail due to the secondary truncation point that was used by the  replication agent. (more…)

Sybase SQSH

I'm not a big fan of the Sybase provided isql tool. I prefer the far better sqsh (pronounced skwish) replacement. it provides many features isql is lacking like searching through queries, using a ; to end a query and much better OS redirection of results. (more…)

Sybase ASE performance tuning

Check performance We can check the performance of the ASE engine by using the sp_sysmon procedure. This procedure will monitor the engine for the given time spew out a long report. This allows us to see our performance and adjust the engine where needed. Sometimes sp_sysmon gives a direct recommendation at the bottom which is always good to looking to. Of course it helps to start sp_sysmon when the database is under high load.   Type Command Data cache sp_sysmon "00:05:00" , dcache; Procedure cache sp_sysmon "00:05:00" , pcache; Memory sp_sysm...