管理數據庫的DDL語句
更新時間 2025-06-17 10:20:09
最近更新時間: 2025-06-17 10:20:09
分享文章
DRDS支持直接連接dbproxy執行DDL語句,本文為您介紹dbproxy管理數據庫的DDL語句。
show rdslist
mysql> show rdslist;
+----------+
| RDS_NAME |
+----------+
| udal3307 |
| udal3308 |
+----------+
2 rows in set (0.02 sec)create db
CREATE DATABASE db_name
[create_option] ...
create_option: [DEFAULT] {
CHARACTER SET [=] charset_name
| COLLATE [=] collation_name
} [/* sharding @@database name="{db_name}" set datasource ="{rds1}:{rds_number1},{rds2}:{rds_number2}" and number={統一分片數量}*/]參數說明
db_name: 要創建的數據庫名稱。長度限制為大于等于3且小于51個字符。
CHARACTER SET: 指定數據庫的字符集。目前只支持 utf8 和 utf8mb4 兩種字符集。
COLLATE: 指定數據庫的排序規則。目前只支持 utf8_general_ci 和 utf8mb4_bin 兩種排序規則。
如果指定了 CHARACTER SET 但未指定 COLLATE,則默認補充為:
utf8 的 COLLATE 是 utf8_general_ci
utf8mb4 的 COLLATE 是 utf8mb4_bin
如果未指定 CHARACTER SET 和 COLLATE,默認為 utf8mb4/utf8mb4_bin。
sharding: 分片信息,用于指定數據庫分片到多個 RDS 數據源上。
@@database name="{db_name}": 指定數據庫名稱。
set datasource ="{rds1}:{rds_number1},{rds2}:{rds_number2}": 指定 RDS 數據源及其分片數量。
and number={統一分片數量}: 指定統一分片數量。
如果不指定sharding注釋,datasource 將默認為 SHOW RDSLIST 獲取的列表,且每個datasource的分片數量默認為1。等價的sharding注釋示例如下(假設show rdslist的列表包含udal3307、udal3308兩個數據源):
CREATE DATABASE my_db/* sharding @@database name="my_db" set datasource ="udal3307:1,udal3308:1" and number=1 */;drop db
DROP DATABASE [IF EXISTS] db_nameDROP DATABASE刪除數據庫中的所有表并刪除數據庫。