1.TeamViewer on terminal server
On terminal servers, (expecially if the server is a Virtual Machine like XenServer, TeamViewer generates one ID for the console itself (server ID) and one ID for each user session (user ID). User IDs will only be accessible as long as the related user session is open and maximised. That is why we recommend to always connect to the server ID instead.
You will find the server ID by right-clicking your Host icon in the tray menu and selecting “About TeamViewer”.
2.SQL Server Database Consistency Repair
The error “SQL Server detected a logical consistency-based I/O error” typically indicates that there is an issue with the physical storage, such as corruption of the database’s pages. This kind of error can be related to problems with the disk subsystem, file corruption, or issues with the SQL Server database engine itself.
Running a DBCC CHECKDB is definitely a good first step, but it may not always be sufficient on its own, depending on the extent of the corruption. Here’s what you can do:
Steps to Handle the Error:
- Run
DBCC CHECKDB
:- The command will check the integrity of the database and report any errors. If errors are found, it will give you recommendations on how to fix them.
- Example:
DBCC CHECKDB('YourDatabaseName') WITH NO_INFOMSGS, ALL_ERRORMSGS;
- This will show you if there are any logical consistency issues and the type of corruption encountered.
- Review the Output:
- After running
DBCC CHECKDB
, review the output carefully. If corruption is detected, the output may suggest specific repair options, such as:- REPAIR_ALLOW_DATA_LOSS: Attempts to repair the database but may result in data loss.
- REPAIR_REBUILD: Attempts to rebuild indexes and resolve minor corruption issues.
- After running
- Decide on Repair Options:
- If errors are detected, and you choose to run the repair options, be aware of the risks:
- REPAIR_ALLOW_DATA_LOSS is the most aggressive option, but it could result in loss of data. Use it only as a last resort and always back up your database before running it.
Example:
ALTER DATABASE YourDatabaseName SET SINGLE_USER WITH ROLLBACK IMMEDIATE; DBCC CHECKDB('YourDatabaseName', REPAIR_ALLOW_DATA_LOSS); ALTER DATABASE YourDatabaseName SET MULTI_USER;
- If errors are detected, and you choose to run the repair options, be aware of the risks:
- Check the Disk Subsystem:
- Since this error often points to I/O issues, it is important to check your disk subsystem for hardware problems or issues with the file system.
- Use tools like chkdsk or your storage vendor’s diagnostic tools to verify that the disk hardware is functioning correctly.
- Restore from Backup:
- If corruption is extensive and cannot be repaired without data loss, restoring the database from a known good backup is the safest option. Be sure to validate backups regularly to ensure they are not corrupted as well.
- Monitor for Future Errors:
- If hardware issues caused the corruption, you should work with your system administrators to ensure that the disk or storage system is repaired or replaced to prevent future corruption.
Important Considerations
- Backup first: Always take a full backup before running the
REPAIR_ALLOW_DATA_LOSS
option. - Potential data loss: As the name suggests, this repair option may result in loss of some data, so use it as a last resort.
- Check hardware/storage: Logical consistency errors often point to underlying hardware or storage issues, so investigate your disk subsystem for potential causes.