ClickHouse通过MySQL引擎对接RDS服务 MySQL引擎用于将远程的MySQL服务器中的表映射到ClickHouse中,并允许您对表进行INSERT和SELECT查询,以方便您在ClickHouse与MySQL之间进行数据交换。 MySQL引擎使用语法: CREATE DATABASE [IF NOT EXISTS] db_name [ON CLUSTER cluster]
ENGINE = MySQL('host:port', ['database' | database], 'user', 'password') 表1 MySQL数据库引擎参数说明 参数 参数说明 host:port RDS服务MySQL数据库实例IP地址和端口。 database RDS服务MySQL数据库名。 user RDS服务MySQL数据库用户名。 password RDS服务MySQL数据库用户密码,命令中如果携带认证密码信息可能存在安全风险,在执行命令前建议关闭系统的history命令记录功能,避免信息泄露。 MySQL引擎使用示例: 连接到RDS服务的MySQL数据库。详细操作可以参考RDS服务MySQ
L实例 连接。 在MySQL数据库上创建表,并插入数据。 创建表mysql_table: CREATE TABLE `mysql_table` (
`int_id` INT NOT NULL AUTO_INCREMENT,
`float` FLOAT NOT NULL,
PRIMARY KEY (`int_id`)); 插入表数据: insert into mysql_table (`int_id`, `float`) VALUES (1,2); 登录
MRS 集群ClickHouse客户端节点。 使用集群客户端连接到ClickHouse服务端,具体请参考ClickHouse客户端使用实践。 在ClickHouse中创建MySQL引擎的数据库,创建成功后自动与MySQL服务器交换数据。 CREATE DATABASE mysql_db ENGINE = MySQL('RDS服务MySQL数据库实例IP地址:MySQL数据库实例端口', 'MySQL数据库名', 'MySQL数据库用户名', 'MySQL数据库用户名密码'); 切换到新建的数据库mysql_db,并查询表数据。 USE mysql_db; 在ClickHouse中查询MySQL数据库表数据。 SELECT * FROM mysql_table; 执行结果如下: ┌─int_id─┬─float─┐
│ 1 │ 2 │
└─────┴──── ┘ 新增插入数据后也可以正常进行查询。 INSERT INTO mysql_table VALUES (3,4);
SELECT * FROM mysql_table; 执行结果如下: ┌─int_id─┬─float─┐
│ 1 │ 2 │
│ 3 │ 4 │
└─────┴──── ┘