MySQL兼容性

本文档旨在介绍PolarDB-X标准版和企业版与传统MySQL数据库之间的兼容性情况,帮助用户了解在迁移到PolarDB-X过程中可能面临的兼容性问题和相关解决方案。

PolarDB-X是一款高性能、高可用性的分布式数据库产品,提供了与MySQL高度兼容的接口和功能,其主售形态主要分为标准版(集中式形态)企业版(分布式形态)。作为一款旨在满足企业级应用场景需求的数据库解决方案,PolarDB-X标准版在保持MySQL易用性和灵活性的同时,100%兼容MySQL语法。此外企业版通过先进的分布式架构设计,在显著提升了数据库的扩展性、稳定性和可靠性的同时,高度兼容MySQL语法。

标准版

说明

标准版100%兼容MySQL,受限于云产品的安全要求,会主动限制控制类SQL的使用,主要体现在下表的高权限账号无权限执行该语句

SQL种类

SQL语法

是否兼容

备注

数据库定义语句

ALTER DATABASE

Y

ALTER EVENT

Y

高权限账号无权限执行该语句。

ALTER FUNCTION

Y

ALTER INSTANCE

Y

高权限账号无权限执行该语句。

ALTER PROCEDURE

Y

ALTER SERVER

Y

高权限账号无权限执行该语句。

ALTER TABLE

Y

ALTER TABLESPACE

Y

高权限账号无权限执行该语句。

ALTER VIEW

Y

CREATE DATABASE

Y

CREATE EVENT

Y

CREATE FUNCTION

Y

CREATE INDEX

Y

CREATE PROCEDURE

CREATE FUNCTION

Y

CREATE SERVER

Y

高权限账号无权限执行该语句。

CREATE SPATIAL REFERENCE SYSTEM

Y

高权限账号无权限执行该语句。

CREATE TABLE

Y

CREATE TABLESPACE

Y

高权限账号无权限执行该语句。

CREATE TRIGGER

Y

CREATE VIEW

Y

DROP DATABASE

Y

DROP EVENT

Y

DROP FUNCTION

Y

DROP INDEX

Y

DROP PROCEDURE

DROP FUNCTION

Y

DROP SERVER

Y

高权限账号无权限执行该语句。

DROP SPATIAL REFERENCE SYSTEM

Y

高权限账号无权限执行该语句。

DROP TABLE

Y

DROP TRIGGER

Y

DROP VIEW

Y

RENAME TABLE

Y

TRUNCATE TABLE

Y

数据操作语句

CALL

Y

DELETE

Y

DO

Y

HANDLER

Y

IMPORT TABLE

Y

高权限账号无权限执行该语句。

INSERT

Y

INTERSECT子句

Y

不支持此功能。

LOAD DATA

Y

高权限账号无权限执行该语句,即无权限加载服务器端的文件。

LOAD XML

Y

高权限账号无权限执行该语句,即无权限加载服务器端的文件。

REPLACE

Y

SELECT

Y

子查询

Y

UPDATE

Y

UNION子句

Y

WITH(公共表表达式)

Y

事务和锁定语句

START TRANSACTION、COMMIT和ROLLBACK语句

Y

SAVEPOINT、ROLLBACK TO SAVEPOINT和RELEASE SAVEPOINT语句

Y

LOCK INSTANCE FOR BACKUP和UNLOCK INSTANCE语句

Y

高权限账号无权限执行该语句。

LOCK TABLES和UNLOCK TABLES

Y

SET TRANSACTION

Y

复制语句:用于控制副本服务器的SQL语句。

CHANGE MASTER TO

Y

高权限账号无权限执行该语句。

CHANGE REPLICATION FILTER

Y

高权限账号无权限执行该语句。

CHANGE REPLICATION SOURCE TO

Y

高权限账号无权限执行该语句。

START REPLICA

Y

高权限账号无权限执行该语句。

START SLAVE

Y

高权限账号无权限执行该语句。

STOP REPLICA

Y

高权限账号无权限执行该语句。

STOP SLAVE

Y

高权限账号无权限执行该语句。

复制语句:用于控制组复制的SQL语句。

START GROUP_REPLICATION

Y

高权限账号无权限执行该语句。

STOP GROUP_REPLICATION

Y

高权限账号无权限执行该语句。

预处理语句

PREPARE

Y

EXECUTE

Y

DEALLOCATE PREPARE

Y

数据库管理报表:账户管理报表

ALTER USER

Y

CREATE ROLE

Y

CREATE USER

Y

DROP ROLE

Y

DROP USER

Y

GRANT

Y

RENAME USER

Y

REVOKE

Y

SET DEFAULT ROLE

Y

SET PASSWORD

Y

SET ROLE

Y

数据库管理语句:表维护语句

ANALYZE TABLE

Y

CHECK TABLE

Y

CHECKSUM TABLE

Y

OPTIMIZE TABLE

Y

REPAIR TABLE

Y

数据库管理语句:组件、插件和可加载函数语句

可加载函数的CREATE FUNCTION语句

Y

可加载函数的DROP FUNCTION语句

Y

INSTALL COMPONENT

Y

INSTALL PLUGIN

Y

UNINSTALL COMPONENT

Y

UNINSTALL PLUGIN

Y

数据库管理语句:SET语句

SET语法

Y

SET CHARACTER

Y

SET NAMES

Y

数据库管理语句:SHOW语句

SHOW BINARY LOGS

Y

仅当拥有REPLICATION CLIENT权限的用户支持使用该语句。

SHOW BINLOG EVENTS

Y

仅当拥有REPLICATION SLAVE权限的用户支持使用该语句。

SHOW CHARACTER SET

Y

SHOW COLLATION

Y

SHOW COLUMNS

Y

SHOW CREATE DATABASE

Y

SHOW CREATE EVENT

Y

SHOW CREATE PROCEDURE

Y

SHOW CREATE TABLE

Y

SHOW CREATE TRIGGER

Y

SHOW CREATE USER

Y

SHOW CREATE VIEW

Y

SHOW DATABASES

Y

SHOW ENGINES

Y

SHOW ERRORS

Y

SHOW EVENTS

Y

SHOW FUNCTION CODE

Y

SHOW FUNCTION STATUS

Y

SHOW GRANTS

Y

SHOW INDEX

Y

SHOW MASTER STATUS

Y

SHOW OPEN TABLES

Y

SHOW PLUGINS

Y

SHOW PRIVILEGES

Y

SHOW PROCEDURE CODE

Y

SHOW PROCEDURE STATUS

Y

SHOW PROCESSLIST

Y

SHOW PROFILE

Y

SHOW PROFILES

Y

SHOW SLAVE | REPLICA STATUS

Y

SHOW STATUS

Y

SHOW TABLE STATUS

Y

SHOW TABLES

Y

SHOW TRIGGERS

Y

SHOW VARIABLES

Y

SHOW WARNINGS

Y

实用程序语句

DESCRIBE

Y

EXPLAIN

Y

HELP

Y

USE

Y

企业版

说明

企业版高度兼容MySQL,受限于分布式架构的复杂性,对于一些高级SQL特性,虽然功能上不支持,但是语法上依然支持,确保了对上下游生态的兼容。

SQL种类

SQL语法

是否兼容

备注

数据库定义语句

ALTER DATABASE

Y

ALTER EVENT

N

不支持此功能

ALTER FUNCTION

Y

ALTER INSTANCE

N

不支持此功能

ALTER PROCEDURE

Y

ALTER SERVER

N

不支持此功能

ALTER TABLE

Y

ALTER TABLESPACE

N

不支持此功能

ALTER VIEW

Y

CREATE DATABASE

Y

CREATE EVENT

N

不支持此功能

CREATE FUNCTION

Y

CREATE INDEX

Y

CREATE PROCEDURE

CREATE FUNCTION

Y

CREATE SERVER

N

不支持此功能

CREATE SPATIAL REFERENCE SYSTEM

N

不支持此功能

CREATE TABLE

Y

CREATE TABLESPACE

N

不支持此功能

CREATE TRIGGER

Y

CREATE VIEW

Y

DROP DATABASE

Y

DROP EVENT

N

不支持此功能

DROP FUNCTION

Y

DROP INDEX

Y

DROP PROCEDURE

DROP FUNCTION

Y

DROP SERVER

N

不支持此功能

DROP SPATIAL REFERENCE SYSTEM

N

不支持此功能

DROP TABLE

Y

DROP TRIGGER

Y

DROP VIEW

Y

RENAME TABLE

Y

TRUNCATE TABLE

Y

数据操作语句

CALL

Y

DELETE

Y

DO

Y

EXCEPT子句

Y

HANDLER

N

不支持此功能

IMPORT TABLE

N

不支持此功能

INSERT

Y

INTERSECT子句

Y

LOAD DATA

N

支持,但默认关闭

LOAD XML

N

不支持此功能

REPLACE

Y

SELECT

Y

子查询

Y

UPDATE

Y

UNION子句

Y

WITH(公共表表达式)

Y

事务和锁定语句

START TRANSACTION、COMMIT和ROLLBACK语句

Y

SAVEPOINT、ROLLBACK TO SAVEPOINT和RELEASE SAVEPOINT语句

Y

LOCK INSTANCE FOR BACKUP和UNLOCK INSTANCE语句

N

不支持此功能

LOCK TABLES和UNLOCK TABLES

N

不支持此功能

SET TRANSACTION

Y

复制语句:用于控制副本服务器的SQL语句。

CHANGE MASTER TO

N

不支持此功能

CHANGE REPLICATION FILTER

N

不支持此功能

CHANGE REPLICATION SOURCE TO

N

不支持此功能

START REPLICA

N

不支持此功能

START SLAVE

N

不支持此功能

STOP REPLICA

N

不支持此功能

STOP SLAVE

N

不支持此功能

复制语句:用于控制组复制的SQL语句。

START GROUP_REPLICATION

N

不支持此功能

STOP GROUP_REPLICATION

N

不支持此功能

预处理语句

PREPARE

Y

EXECUTE

Y

DEALLOCATE PREPARE

Y

数据库管理报表:账户管理报表

ALTER USER

Y

CREATE ROLE

Y

CREATE USER

Y

DROP ROLE

Y

DROP USER

Y

GRANT

Y

RENAME USER

Y

REVOKE

Y

SET DEFAULT ROLE

Y

SET PASSWORD

Y

SET ROLE

Y

数据库管理语句:表维护语句

ANALYZE TABLE

Y

CHECK TABLE

Y

CHECKSUM TABLE

Y

OPTIMIZE TABLE

Y

REPAIR TABLE

N

不支持此功能

数据库管理语句:组件、插件和可加载函数语句

可加载函数的CREATE FUNCTION语句

Y

可加载函数的DROP FUNCTION语句

Y

INSTALL COMPONENT

N

不支持此功能

INSTALL PLUGIN

N

不支持此功能

UNINSTALL COMPONENT

N

不支持此功能

UNINSTALL PLUGIN

N

不支持此功能

数据库管理语句:SET语句

SET语法

Y

SET CHARACTER

Y

SET NAMES

Y

数据库管理语句:SHOW语句

SHOW BINARY LOGS

Y

仅拥有REPLICATION CLIENT权限的用户可以使用该语句。

SHOW BINLOG EVENTS

Y

仅拥有REPLICATION SLAVE权限的用户可以使用该语句。

SHOW CHARACTER SET

Y

SHOW COLLATION

Y

SHOW COLUMNS

Y

SHOW CREATE DATABASE

Y

SHOW CREATE EVENT

Y

SHOW CREATE PROCEDURE

Y

SHOW CREATE TABLE

Y

SHOW CREATE TRIGGER

Y

SHOW CREATE USER

Y

SHOW CREATE VIEW

Y

SHOW DATABASES

Y

SHOW ENGINES

Y

SHOW ERRORS

Y

SHOW EVENTS

Y

SHOW FUNCTION CODE

Y

SHOW FUNCTION STATUS

Y

SHOW GRANTS

Y

SHOW INDEX

Y

SHOW MASTER STATUS

Y

SHOW OPEN TABLES

Y

SHOW PLUGINS

Y

SHOW PRIVILEGES

Y

SHOW PROCEDURE CODE

Y

SHOW PROCEDURE STATUS

Y

SHOW PROCESSLIST

Y

SHOW PROFILE

Y

SHOW PROFILES

Y

SHOW RELAYLOG EVENTS

Y

SHOW REPLICAS

Y

SHOW SLAVE HOSTS | SHOW REPLICAS

N

不支持此功能

SHOW REPLICA STATUS

Y

SHOW SLAVE | REPLICA STATUS

Y

SHOW STATUS

Y

SHOW TABLE STATUS

Y

SHOW TABLES

Y

SHOW TRIGGERS

Y

SHOW VARIABLES

Y

SHOW WARNINGS

Y

实用程序语句

DESCRIBE

Y

EXPLAIN

Y

HELP

Y

USE

Y