ApexSQL Log cannot read the following from the transaction log:
- Encrypted data
- FILESTREAM BLOBs
If you are unsure whether a particular feature of SQL Server is supported, please contact firstname.lastname@example.org
Does ApexSQL Log install anything on my SQL Server?
No. ApexSQL Log does not install anything on the SQL Server itself. Only windows service that allows remote reading of online transaction log files is installed on the system. For more information on the topic, please read this article
I don't want to install ApexSQL Log or ApexSQL Log service on my machine. Is there a way to use ApexSQL Log?
Yes. You can audit your databases on the ‘bridge’ (test) server where ApexSQL Log application can be installed, and the database and transaction log files copied/transferred to. For more information on how to achieve this, please read this article
Does ApexSQL Log use triggers?
No. ApexSQL Log reads and analyzes the information stored in the online transaction log, native or compressed transaction log backups and detached log files
Does ApexSQL Log have a large performance overhead?
No. ApexSQL Log has no performance overhead during audit trail capture. The application simply reads the transaction logs to gather audit data. This allows auditing to be performed during low load times or even be offloaded to another server
Can ApexSQL Log audit SELECT statements?
No. ApexSQL Log cannot audit SELECT statements as these are not logged in database transaction logs. You can use ApexSQL Audit to audit SELECT statements
Can changes to database schema or permissions be viewed or rolled back?
Yes. You can view and roll back changes caused by ALTER/CREATE/DROP database objects and GRANT/REVOKE permissions statements
Does ApexSQL Log support reading transactions logs on SQL Server Express?
Yes, ApexSQL Log fully supports reading and analysis of transaction logs and databases on SQL Server Express
Can ApexSQL Log read backups created by third-party tools?
No. ApexSQL Log can successfully read only SQL Server native transaction log backups. The transaction log backups created or compressed by a third party tool, even when uncompressed/converted back to native using the same tool, don’t provide sufficient info for successful auditing and/or data recovery
Licensing and evaluation
How is ApexSQL Log licensed?
ApexSQL Log is licensed per SQL Server instance. The ApexSQL Log client application can be installed on the unlimited number of machines, as long as it connects to the licensed SQL Server instance
In a cluster environment, each SQL Server instance on active node requires a license. In the active-passive cluster configuration, the license is required for SQL Server instances on the active node only. When the passive node becomes active and the active node becomes passive, the activation of SQL Server instances on the node that's active now is required, but the same license can be used
Are there any restrictions or limitations on the evaluation version of ApexSQL Log?
The ApexSQL Log evaluation version can be installed on any number of server instances and users are not restricted to use with only predetermined databases. However, the evaluation version has some important limitations:
- All operations are audited to grid but row details are available for every 10th operation only
- Generation of UNDO/REDO and export scripts is limited to every 10th operation
- Exporting results is disabled in grid
- CLI functionality is not available
What is the licensing model of your server tools in a clustered SQL Server environment?
Each SQL Server instance on active nodes requires a license. Instances on the passive nodes don’t require licensing
Transaction log auditing
Can ApexSQL Log audit Windows logins?
Yes, if the Windows login is used as an authentication method for logging onto a SQL Server instance. By default, ApexSQL Log monitors the SQL Server defined users
Do I have to map the log directory of the server as a network drive on the client machine before I can access it?
No. Not mapped remote directories can be accessed without mapping if appropriate access is granted by the server
Is it possible to run ApexSQL Log automatically or unattended?
Yes. This can be done using the command line interface
Will ApexSQL Log be able to identify a specific user ID if passed from a web application?
No. If a web application uses only one account to connect to SQL Server, ApexSQL Log will show only that account. This issue must be addressed from within web applications by altering how they login
Can ApexSQL Log read both archive and online transaction logs while the database is active?
Yes. ApexSQL Log needs the database to be online in order to retrieve necessary information
ApexSQL Log is showing UPDATE records as DELETE/INSERT pairs for a clustered index value. Can this information be shown as UPDATE record?
No. When a value that's part of a clustered index is updated, the SQL Server records that change in the transaction log as a DELETE/INSERT pair
Can ApexSQL Log read UPDATE operations for NTEXT, TEXT, or IMAGE?
No. ApexSQL Log doesn't support auditing of changes produced by WRITETEXT, UPDATETEXT, and UPDATE operations affecting only BLOB data stored in obsolete BLOB types (NTEXT, TEXT, and IMAGE)
How does ApexSQL Log handle failover in a clustered environment?
It depends on whether the ApexSQL Log client is running on the active node or if it is running outside of the cluster.
- If ApexSQL Log client is running on the active node you will have to have the same configuration (e.g. batch files for command line interface) on each node in the cluster. When the failover happens, log auditing on the new active node will need to be started manually
- If ApexSQL Log client is running outside of the cluster, ApexSQL Log auditing will be automatically redirected by the cluster itself to the active node (same as all other applications running outside of the cluster)