Troubleshoot common issues

Prev Next

Available in Classic and VPC

You might run into the following problems when using Cloud DB for MSSQL. Find out causes and possible solutions.

MSSQL Server connection error

Error occurs when connecting to MSSQL Server.
Cannot access MSSQL Server from outside.

Cause

You need to create an application server that will communicate with MSSQL Server to access MSSQL Server. Otherwise, Cloud DB for MSSQL of NAVER Cloud Platform cannot be used normally.

Solution

Check application server
A MSSQL server created from Cloud DB for MSSQL is currently only accessible within NAVER Cloud Platform, so the applications server must also be created inside NAVER Cloud Platform. For the overall flow of server creation, check scenario and see Start guide by environment for each platform:

Note

You are using SSMS when you directly access to MSSQL Server without application server. For more information on how to use utility, see Access DB from outside cloud.

Check how to access to MSSQL Server
To create a MSSQL Server on NAVER Cloud Platform's server:

Use linked server

Cannot use linked server in Cloud DB for MSSQL.

Cause

It is the specification that you cannot use linked server in Cloud DB for MSSQL.

Solution

To use linked server with MSSQL, configure directly with general installation type MSSQL.

Mirror server replication error

Error occurs when replicating to Mirror server.

Cause

If you create a user or change password on SSMS, it may not be replicated in Mirror server.

Solution

  • Do not make any changes (rename, password change, etc.) to USER_ID for management which you create at the time of server creation.
  • If you create a database directly on SSMS UI, you should change the recovery model option to "Full".

Notifications on exceeding MSSQL Server threshold

Unable to receive an event notification on exceeding MSSQL Server threshold.

Cause

Cloud DB for MSSQL provides monitoring service and event collection service for the performance and operating system of the server. You can directly set thresholds by integrating with Cloud Insight. If there's an error between Cloud Insight integration and custom config value, notification may not be sent normally.

Solution

The monitoring results and event collection results of Cloud DB for MSSQL can be integrated with Cloud Insight to notify via email or SMS. For detailed usage, see below information by environment for each platform:

Unable to access database

Cannot access the database as it has been restarted and is in a "recovering" state.

Cause

It is automatically recovering due to unsuccessful table task.

Solution

If you force stop the process when table data is being changed and restart, it takes longer to recover larger capacity change. Wait until the recovery is complete.

Execute Failover

I am trying to execute Failover to reproduce Failover situation caused by Principal Server failure to check any effects on applications prior to opening the service.

Solution

You can select reboot mode when restarting the server. Without FailOver and With FailOver are the available reboot modes. If you select Without FailOver, the settings made via SSMS are preserved. However, if you select With FailOver, the settings may be lost.

Synchronization error

Database synchronization did not perform properly.

Causes and solutions

Database synchronization between servers configured for high availability may not be performed properly for several reasons. Run the query below using your console user account, and refer to the guide to make the necessary changes.

SELECT A.NAME
	, ISNULL(
		TRIM(',' FROM 
			CASE WHEN STATUS & 1 = 1 THEN 'AUTOCLOSE_DATABASE' ELSE '' END 
			+','+ CASE WHEN STATUS & 64 = 64 THEN 'PRE_RECOVERY_DATABASE' ELSE '' END 
			+','+ CASE WHEN STATUS & 128 = 128  THEN 'RECOVERING_DATABASE' ELSE '' END 
			+','+ CASE WHEN STATUS & 256 = 256  THEN 'NOT_RECOVERED_DATABASE' ELSE '' END 
			+','+ CASE WHEN STATUS & 512 = 512 THEN 'OFFLINE_DATABASE' ELSE '' END 
			+','+ CASE WHEN STATUS & 1024 = 1024 THEN 'READ_ONLY_DATABASE' ELSE '' END 
			+','+ CASE WHEN STATUS & 2048 = 2048 THEN 'DBO_USE_ONLY_DATABASE' ELSE '' END 
			+','+ CASE WHEN STATUS & 4096 = 4096 THEN 'SINGLE_USER_DATABASE' ELSE '' END 
			+','+ CASE WHEN STATUS & 32768 = 32768 THEN 'EMERGENCY_MODE_DATABASE' ELSE '' END 
			+','+ CASE WHEN STATUS & 4194304 = 4194304 THEN 'AUTOSHRINK_DATABASE' ELSE '' END 
			+','+ CASE WHEN RECOVERY_MODEL_DESC = 'SIMPLE' THEN 'SIMPLE_DATABASE' ELSE '' END 
		), ''
	) MIRROR_ERROR_CHECK 
FROM SYS.SYSDATABASES A
	INNER JOIN SYS.DATABASES B
	ON A.DBID = B.DATABASE_ID
WHERE A.DBID > 4
	AND A.NAME NOT IN ('LAZYLOG')
	AND (
		CASE WHEN STATUS & 1 = 1 THEN 1 ELSE '' END <> ''
		OR CASE WHEN STATUS & 64 = 64 THEN 'PRE_RECOVERY_DATABASE' ELSE '' END <> ''
		OR CASE WHEN STATUS & 128 = 128  THEN 'RECOVERING_DATABASE' ELSE '' END <> ''
		OR CASE WHEN STATUS & 256 = 256  THEN 'NOT_RECOVERED_DATABASE' ELSE '' END <> ''
		OR CASE WHEN STATUS & 512 = 512 THEN 'OFFLINE_DATABASE' ELSE '' END <> ''
		OR CASE WHEN STATUS & 1024 = 1024 THEN 'READ_ONLY_DATABASE' ELSE '' END <> ''
		OR CASE WHEN STATUS & 2048 = 2048 THEN 'DBO_USE_ONLY_DATABASE' ELSE '' END <> ''
		OR CASE WHEN STATUS & 4096 = 4096 THEN 'SINGLE_USER_DATABASE' ELSE '' END <> ''
		OR CASE WHEN STATUS & 32768 = 32768 THEN 'EMERGENCY_MODE_DATABASE' ELSE '' END <> ''
		OR CASE WHEN STATUS & 4194304 = 4194304 THEN 'AUTOSHRINK_DATABASE' ELSE '' END <> ''
		OR CASE WHEN RECOVERY_MODEL_DESC = 'SIMPLE' THEN 'SIMPLE_DATABASE' ELSE '' END <> ''
		)
UNION ALL 
SELECT DB_NAME(DATABASE_ID) AS DATABASE_NAME
	, TYPE_DESC --, NAME, PHYSICAL_NAME
FROM SYS.MASTER_FILES
WHERE TYPE_DESC = 'FILESTREAM';
Message Contents Reference
autoclose_database Check whether the Auto Close option is enabled, and then disable the Auto Shrink option. ALTER DATABASE SET options (Transact-SQL)
pre_recovery_database Check for any databases that have not been recovered, and take appropriate actions to ensure their recovery is completed.
recovering_database Check whether any databases are currently under recovery, and take actions to ensure they are fully recovered.
not_recovered_database Check for any databases that have not been recovered, and take appropriate actions to ensure their recovery is completed.
offline_database Check for any databases in offline state, and change them to online mode.
read_only_database Check for any read-only databases, and disable the read-only option. ALTER DATABASE SET options (Transact-SQL)
dbo_use_only_database Check for any databases restricted to DBO only, and change the access mode to MULTI_USER.
single_user_database Check for any databases in single-user mode, and disable single-user mode. ALTER DATABASE SET options (Transact-SQL)
emergency_mode_database Check for any databases in emergency mode, and disable emergency mode. ALTER DATABASE SET options (Transact-SQL)
autoshrink_database Check for any databases with the Auto Shrink option enabled, and disable the option. ALTER DATABASE SET options (Transact-SQL)
simple_database Check for any databases using the Simple recovery model, and change it to Full. ALTER DATABASE SET options (Transact-SQL)
filestream
  • Check for any databases with a File Stream file group, and remove the File Stream file group.

  • If the File Stream file group is used for MEMORY_OPTIMIZED_DATA, run data migration and delete the database in the console.
  • ALTER DATABASE(Transact-SQL) file and file group options

  • The Memory Optimized Filegroup
  • Note

    If you're still having trouble finding what you need, click on the feedback icon and send us your thoughts and requests. We'll use your feedback to improve this guide.