| By product |
| Other |
|
Troubleshooting Troubleshooting and known issues with ApexSQL Tools Insufficient execute permissions dialog shown when working with the Connection monitor Applies to ApexSQL Log Summary This article explains what to do when the following message appears "Insufficient permissions to execute server-side components. Please make sure SQL login used has EXECUTE permission on ApexSQL Log extended procedures (xp_ApexSQLLog)" Symptoms Insufficient permissions to execute server-side components message shows up when user is connecting to the Connection monitor manager Cause Besides the client application, ApexSQL Log installs several extended stored procedures to SQL Server master database. Only a user with enough privileges granted on the master database and these procedures can access Connection monitor manager and view and change its settings Resolution SQL login used to access the Connection monitor manager must have at least db_datareader and db_securityadmin database roles and be granted EXECUTE permission on both xp_ApexSqlLogConnectionMonitor_State and xp_ApexSQLLog extended stored procedures. It also needs to have VIEW ANY DEFINITION set upon the master database About ApexSQL Log ApexSQL Log is a SQL Server Transaction Log reader that allows viewing transaction log data in read-friendly format. Audit and undo SQL database changes of your choosing. Determine who changed the data and when the change occurred. Read the transaction log to find out who created, changed or dropped a database object Last updated November 28, 2011 Labels: ApexSQL Log ...System.OutOfMemory exception is thrown Applies to ApexSQL Diff, ApexSQL Log, ApexSQL Doc Summary This article explains what to do when the System.OutOfMemory exception is thrown Symptoms System.OutOfMemory exception is thrown. It usually happens when working with large databases, backups or script folders containing large number of objects, generating huge scripts or putting application under strain in general. Cause The exception is caused by the .NET framework architecture and the way it allocates memory. Due to the nature of the .NET framework, this cannot be completely removed, however it can be worked around. Resolution Use Command Line Interface that these ApexSQL products contain. Using CLI puts less strain on the machine resources. You can either save your project using GUI and then execute it via CLI, or you can specify all the parameters using CLI entirely. To make your project using GUI and execute it via CLI: 1) Make your project using GUI and save it 2) Open Command Prompt 3) Navigate to the ApexSQL product installation path (e.g. cd C:\Program Files\ApexSQL\ApexSQLDiff\ or cd C:\Program Files\ApexSQL\ApexSQLLog\) 4) Type: a) for ApexSQL Diff ApexSQLDiff.com /project:<project path>\<project name> (e.g. ApexSQLDiff.com /project:C:\Users\ApexUser\Documents\ApexSQL\ApexSQLDiff \project.axds) The script file named “sync.sql” will be created in the ApexSQL Diff installation folder. b) for ApexSQL Log ApexSQLLog.com /project:<project path>\<project name> /undo:<filename> (e.g. ApexSQLLog.com /project:C:\Users\ApexUser\Documents\ApexSQL\ApexSQLDiff \project.axlp /undo:undoscript.sql) The script file named “undoscript.sql” will be created in the ApexSQL Log installation folder. Instead of using CLI in ApexSQL Log, you can output the results into a file and thus avoid showing them in the Main grid. About ApexSQL Log ApexSQL Log is a SQL Server Transaction Log reader that allows viewing transaction log data in read-friendly format. Audit and undo SQL database changes of your choosing. Determine who changed the data and when the change occurred. Read the transaction log to find out who created, changed or dropped a database object Last updated December 01, 2011 Labels: ApexSQL Diff, ApexSQL Doc, ApexSQL Log ...How to determine if ApexSQL Log CLI has stopped working Applies to ApexSQL Log Summary This article explains how to determine if ApexSQL Log CLI has stopped working Symptoms The application running is undetermined. There are no new output lines in the console Cause Analyzing huge transaction logs can cause ApexSQL Log to become non-responsive Resolution To check if the ApexSQL Log is still running, do the following: 1. Open Windows Task Manager 2. Select Processes tab and open Select Columns dialog 3. Select I/O Read Bytes 4. Click OK and check this value for ApexSQLLog.exe value ![]() If the value of I/O Read Bytes keeps changing - ApexSQL Log is still analyzing transaction log sources Also check the size of the output file created by ApexSQL Log. If its size is increasing - ApexSQL Log is still running About ApexSQL Log ApexSQL Log is a SQL Server auditing and recovery solution. Use ApexSQL Log to recover data, undo INSERT, UPDATE and DELETE commands and audit schema changes. Read the transaction log to find out who created, changed or dropped a database object. Last updated November 25, 2011 Labels: ApexSQL Log ...Insufficient credentials exception is thrown when attempting to install the server-side components Applies to ApexSQL Log Summary This article explains what to do when the "Insufficient credentials" exception is thrown Symptoms Exception is thrown during the installation of the server-side components Cause Insufficient user permissions to install the server-side components Resolution Make sure that the computer user account used to run the installation • Is a member of the Windows administrators group on the machine the installation has been started on • Has Windows administrative privileges on the machine on which the SQL Server is installed • Is a member of the fixed sysadmin SQL Server role Try to install the server-side components again See also ApexSQL Log installation manual About ApexSQL Log ApexSQL Log is a SQL Server Transaction Log reader that allows viewing transaction log data in read-friendly format. Audit and undo SQL database changes of your choosing. Determine who changed the data and when the change occurred. Read the transaction log to find out who created, changed or dropped a database object Last updated April 9, 2012 Labels: ApexSQL Log ...What should I do when I encounter a problem in ApexSQL Log? Applies to ApexSQL Log Summary This article explains what should be done when performance problems are encountered in ApexSQL Log or there are problems while installing ApexSQL Log server-side components Symptoms 1) Performance troubles a) Out of memory exception during data source analysis from the ApexSQL Log GUI b) Slow work with Main grid in the ApexSQL Log GUI Tech Tip Command Line Interface (CLI) must be used for issues mentioned above, detailed info can be read in ApexSQL Log online documentation in the Command Line Interface chapter 2) Problems during server-side components installation Resolution Send us the application log files for analysis Client-side logs are located in: C:\Users\<user name>\AppData\Local\ApexSQL\ApexSQLLog<major version>\LOG (for Windows Vista, Windows 7 and Windows Server 2008) or C:\Documents and Settings\<user name>\Local Settings\Application Data\ApexSQL\ApexSQLLog<major version>\Logs (for Windows XP and Windows Server 2003) Server-side log file is located in: C:\ProgramData\ApexSQL\ApexSQLLog<major version>\<instance name>\LOG (for Windows Vista, Windows 7 and Windows Server 2008) or C:\Documents and Settings\All Users\Application Data\ApexSQL\ApexSQLLog<major version>\<instance name>\LOG (for Windows XP and Windows Server 2003) Note App/Application Data a hidden folder; Show hidden files and folders Windows option has to be checked. About ApexSQL Log ApexSQL Log is a SQL Server auditing and recovery solution. Use ApexSQL Log to recover data, undo INSERT, UPDATE and DELETE commands and audit schema changes. Read the transaction log to find out who created, changed or dropped a database object. Last updated November 29, 2011 Labels: ApexSQL Log ...Installing server-side components only to a remote server Applies to ApexSQL Log ApexSQL Recover Summary This article shows how to install server-side components of ApexSQL Log/Recover to a remote server Symptoms When installing server-side components from a client machine, the following error occurs "You need to be a member of the sysadmin role to complete the installation. Please, attempt to connect to the database using a SQL Server sysadmin account after closing this dialog" Cause One of the causes for this is that the user attempting to install the server-side components doesn't have sufficient permissions to install them on the remote server Resolution The server-side components must be installed directly on the server. This can be accomplished by running application individual installer on the server itself. To do this 1) Download ApexSQL Log or ApexSQL Recover individual installers Download ApexSQL Log installer Download ApexSQL Recover installer 2) Run the installer on the server 3) When prompted to select components to install, select Server-side components on a local server ![]() 4) Complete the installation About ApexSQL Log ApexSQL Log is a SQL Server Transaction Log reader that allows viewing transaction log data in read-friendly format. Audit and undo SQL database changes of your choosing. Determine who changed the data and when the change occurred. Read the transaction log to find out who created, changed or dropped a database object About ApexSQL Recover ApexSQL Recover is a tool that recovers data lost due to delete, truncate and drop operations. Recover BLOB data as files and extract data from corrupted databases, detached MDFs or a recent SQL database backup without restoring it. Last update November 30, 2011 Labels: ApexSQL Log, ApexSQL Recover ...ApexSQL Log shows invalid data for NT user name, application name and client host when auditing transaction log from another server Applies to ApexSQL Log Summary This article explains how to audit transaction logs from one server on another and what to do if NT user name, application name and client host data are not correct Symptoms When transaction logs from one server are audited on another server, ApexSQL shows invalid data for NT user name, application name and client host Cause NT user name, application name and client host data are not located in the transaction log. ApexSQL Log captures this data through its Connection monitor, saves them in the table APEXSQL_LOG_LOGIN and later, during the auditing process, matches this data with transaction log data. The APEXSQL_LOG_CONNECTION_MONITOR_SESSION table captures the information about the Connection monitor sessions. When the database is moved from one server to another, ApexSQL Log cannot find correct captured login data and invalid data message (or none at all) is shown Resolution To handle this 1. Copy the set of transaction log backups from the production server to the auditing server 2. Backup the data from APEXSQL_LOG_CONNECTION_MONITOR_SESSION and APEXSQL_LOG_LOGIN tables on the production server and copy the resulting files to the auditing server. Make sure not to copy the SERVER_NAME column values. Run the following command from the Command prompt bcp "SELECT SPID, LOGIN_TIME, LOGIN_NAME, CLIENT_HOST, APPLICATION_NAME FROM ApexSQLLog.dbo.APEXSQL_LOG_LOGIN" queryout ProductionServerLogins.Bulk -TNote that this command applies to the default ApexSQL Log capture database I.e. ApexSQLLog. If another database is used for data capture, command needs to change. If the data is not on the default SQL Server instance, the -S argument must be added -SServer_name[\instance_name] I.e. -SDELL\SQL2008The file storage types should be SPID - int, LOGIN_TIME - datetime - null, LOGIN_NAME, CLIENT_HOST and APPLICATION_NAME - nvarchar. Click Enter to confirm all the options (file storage type, prefix length and field terminator)The APEXSQL_LOG_CONNECTION_MONITOR_SESSION table can be backed up using following command bcp "SELECT SESSION_ID, START_TIME, STOP_TIME FROM ApexSQLLog.dbo.APEXSQL_LOG_CONNECTION_MONITOR_SESSION" queryout ProductionServerSessions.Bulk -TThese commands will create Production server logins and Production server sessions bulk files in the folder in which they were executed 3. Start the Connection monitor on test server 4. Setup the Connection monitor database and select the option I will maintain the information myself on the test server 5. Stop and disable the Connection monitor on the test server 6. Truncate the APEXSQL_LOG_CONNECTION_MONITOR_SESSION and APEXSQL_LOG_LOGIN tables on the test server TRUNCATE TABLE APEXSQL_LOG_LOGIN7. Transfer the Connection monitor data from the production server to the auditing server. Use the following command in the Command prompt of the auditing server bcp ApexSQLLog.dbo.APEXSQL_LOG_LOGIN in ProductionServerLogins.Bulk -TSet the length of the SERVER_NAME field to 0 8. Run ApexSQL Log auditing process on the auditing server with the set of the transaction log backups copied in step 1. Since APEXSQL_LOG_CONNECTION_MONITOR_SESSION and APEXSQL_LOG_LOGIN now contain login data from the production server, correct login data will appear in the application. The Connection monitor on the auditing server can be disabled About ApexSQL Log ApexSQL Log is a SQL Server auditing and recovery solution. Use ApexSQL Log to recover data, undo INSERT, UPDATE and DELETE commands and audit schema changes. Read the transaction log to find out who created, changed or dropped a database object. Last updated November 29, 2011 Labels: ApexSQL Log ...Very large ApexSQL Log tables Applies to ApexSQL Log Summary This article explains why the APEXSQL_LOG_CONNECTION_MONITOR_SESSION and APEXSQL_LOG_LOGIN tables can grow enormously and how to make them smaller Symptoms The database where the tables that capture login, application and host information are stored (APEXSQLLOG by default) has grown enormously (I.e. 15 GB). The APEXSQL_LOG_LOGIN and APEXSQL_LOG_CONNECTION_MONITOR_SESSION tables have millions of records Cause ApexSQL Log Connection monitor inserts one new row into APEXSQL_LOG_LOGIN table for each new login and one new row into APEXSQL_LOG_CONNECTION_MONITOR_SESSION table for each new session. These tables grow with the number of logins made to the server. The location of these tables and data management is fully configurable from the Connection monitor manager dialog. More information could be found here Resolution The login information is not cleaned automatically if the option I will maintain the information myself is selected. The recommended solution is to use automatic maintenance of captured information. If there is no need to keep the captured data of the changes that happened long ago, reduce the number of days that the information is kept for ![]() Also, if there is no need for the specific connecton information captured by Connection monitor, this could be stoped and disabled. Note that deleting the captured data will make the database transaction log grow. But it will also enable to recover the deleted data using ApexSQL Log About ApexSQL Log ApexSQL Log is a SQL Server Transaction Log reader that allows viewing transaction log data in read-friendly format. Audit and undo SQL database changes of your choosing. Determine who changed the data and when the change occurred. Read the transaction log to find out who created, changed or dropped a database object Last updated November 29, 2011 Labels: ApexSQL Log ...I restored a database backup and get no results in ApexSQL Log Applies to ApexSQL Log Summary This article shows what to do when there are no results after database backup is restored in ApexSQL Log Symptoms The original database is in full recovery mode. The restored database is restored from a database backup and there are no results in the Main Grid Cause The cause for this problem is that a full database backup doesn't include the entire transaction log. Only the transactions that were uncommitted at the start of the backup plus all the transactions that are run during the backup exist in the full database backup Resolution Create the transaction log backup on the original server. Use it as a datasource for ApexSQL Log analysis of the restored database About ApexSQL Log ApexSQL Log is a SQL Server auditing and recovery solution. Use ApexSQL Log to recover data, undo INSERT, UPDATE and DELETE commands and audit schema changes. Read the transaction log to find out who created, changed or dropped a database object. Last updated November 28, 2011 Labels: ApexSQL Log ... |








