Kenapa Tak Boleh Guna DROP DATABASE Biasa?
RDS SQL Server block arahan DROP DATABASE standard sebab database tu terikat dengan Availability Group atau Multi-AZ setup. Ko kena guna stored procedure khas yang AWS provide: rds_drop_database.
1. Sambung ke RDS
Guna sqlcmd dari server atau PC ko:
sqlcmd -S akhiran.xxxxx6vot8.eu-west-1.rds.amazonaws.com -U root -P '<PASSWORD>' -d master
2. Switch ke msdb
USE msdb;
GO
3. Drop Database Guna Prosedur RDS
Contoh nak drop database JIRA_Linux_Copy:
EXEC msdb.dbo.rds_drop_database N'JIRA_Linux_Copy';
GO
Kalau ada beberapa database nak di-drop sekaligus:
EXEC msdb.dbo.rds_drop_database N'JIRA_Linux_Copy1';
GO
EXEC msdb.dbo.rds_drop_database N'JIRA_Linux_Test';
GO
Prosedur ni akan handle semua benda: terminate active connection, remove dari AG/mirroring, then baru delete database tu.
4. Verify Database Dah Hilang
SELECT name FROM sys.databases
WHERE name IN (N'JIRA_Linux_Copy', N'JIRA_Linux_Copy1', N'JIRA_Linux_Test');
GO
Kalau result kosong, DB dah berjaya drop.
Benda Penting Sebelum Ko Drop
- Sekali drop, data hilang terus. Kalau perlukan backup, buat snapshot dulu kat AWS Console.
- Storage RDS tak automatik mengecil lepas DB delete. Kalau nak jimat kos, kena restore ke instance baru dengan storage yang lebih kecil.