ALTER DATABASE 
===================================



描述 
-----------

该语句用来修改 DataBase 的属性。

格式 
-----------

```javascript
alter_database_stmt:
        ALTER DATABASE [database_name] [SET] alter_specification_list;

alter_specification_list: 
    alter_specification [alter_specification ...]

alter_specification: 
    [DEFAULT] {CHARACTER SET | CHARSET} [=] charset_name
  | [DEFAULT] COLLATE [=] collation_name
  | REPLICA_NUM [=] int_num
  | PRIMARY_ZONE [=] zone_name
  | {READ ONLY | READ WRITE}
    | DEFAULT TABLEGROUP [=] {NULL | table_group_name}
```



参数解释 
-------------



|               **参数**                |               **描述**               |
|-------------------------------------|------------------------------------|
| database_name                       | 指定要修改属性的数据库名称。如果不指定，会对当前默认数据库进行修改。 |
| CHARSET charset_name                | 指定要修改的字符集。                         |
| COLLATE collation_name              | 指定校对规则。                            |
| REPLICA_NUM int_num                 | 指定副本数。                             |
| PRIMARY_ZONE zone_name              | 指定主 Zone。                          |
| READ ONLY \| READ WRITE             | 设置数据库级只读或读写属性。                     |
| DEFAULT TABLEGROUP table_group_name | 设置数据库默认表组信息，NULL 表示取消数据库默认表组。      |



示例 
-----------

* 修改数据库 test2 的字符集为 UTF8MB4，校对规则为 UTF8MB4_BIN，且为读写属性。




```javascript
OceanBase(admin@test)>alter database test2 DEFAULT CHARACTER SET UTF8MB4;
Query OK, 0 rows affected (0.03 sec)

OceanBase(admin@test)>alter database test2 DEFAULT COLLATE UTF8MB4_BIN;
Query OK, 0 rows affected (0.03 sec)

OceanBase(admin@test)>alter database test2 READ WRITE;
Query OK, 0 rows affected (0.02 sec)
```



