This topic describes the concepts and features of tenants in OceanBase Database. OceanBase Database supports multi-tenancy in one cluster. A single cluster can contain multiple independent tenants. In OceanBase Database, tenants act as resource allocation units and lay the foundation for database object management and resource management.
In a sense, tenants are comparable to "instances" in a conventional database system. Tenants are completely isolated from each other. In terms of data security, OceanBase Database forbids cross-tenant access, to prevent data assets of a tenant from being stolen by other tenants. In terms of resource utilization, a tenant has exclusive ownership of its allocated resources. In summary, a tenant can be seen as a container for database objects and resources such as CPUs, memory, and I/O.
Tenants are divided into the system tenant, user tenants, and meta tenants based on their responsibilities. The system tenant, namely the sys tenant, is a built-in tenant of OceanBase Database. User tenants are created by the system tenant based on, for example, business requirements. A user tenant is equivalent to a database instance and corresponds to a general database management system. A meta tenant is a self-managed tenant in OceanBase Database. Each time a user tenant is created, the system automatically creates a corresponding meta tenant whose lifetime is the same as that of the user tenant. You cannot log on to a meta tenant. Information about the meta tenant can be accessed from a user tenant or the sys tenant.
Tenants are also classified into MySQL tenants and Oracle tenants based on their compatibility modes. Different types of tenants use different syntax and features. In OceanBase Database, sys tenants are MySQL tenants.