mysql使用FEDERATED时,密码中有’@’符号怎么办?

原文链接:这里

0.背景

使用FEDERATED连接,但是连接的时候密码中有 ‘@’符号,提示格式错误。

Can’t create federated table. The data source connection string ‘mysql://root:pwd@2192432@123.123.123.123:3306/test’ is not in the correct format

1.解决办法

把这个过程写成server就行了。

CREATE SERVER fedlink
FOREIGN DATA WRAPPER mysql
OPTIONS (USER 'root', PASSWORD 'pwd@2192432', HOST '123.123.123.123', PORT 3306, DATABASE 'test');

然后创建表的时候:

CREATE TABLE `user2` (
`id` varchar(255) NOT NULL COMMENT 'id',
`code` varchar(255) DEFAULT NULL COMMENT '代码',
PRIMARY KEY (`id`),
UNIQUE KEY `upk_user_id` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8 COMMENT='用户表'
ENGINE=FEDERATED CONNECTION = 'fedlink/user2';

这样就可以了。

posted on 2022-02-01 20:09  longkui  阅读(2352)  评论(0编辑  收藏  举报

导航