使用用户名密码和主机

时间:2017-02-17 10:26:41

标签: mysql

我的db密码是Dhanu @ 1包含@,

创建FEDERATED表时,我收到错误

  

无法创建federeted表。数据源连接字符串mysql://dhanu:Dhanu@1@localhost:3306/mydb/items的格式不正确

请帮助我!

1 个答案:

答案 0 :(得分:4)

密码中不建议使用与@类似的字符,并且可以对此问题进行类似的讨论here

您可以使用CREATE SERVER语句解决上述限制,如下例所示:

CREATE SERVER federatedTablelink
FOREIGN DATA WRAPPER mysql
OPTIONS (USER 'USERNAME', HOST 'Host_IP', DATABASE 'DB_NAME', 
PORT '3306',Password 'PASSWORD');

使用上述步骤创建服务器链接后,您可以使用以下命令创建使用此连接的表:

CREATE TABLE test (
id     INT(20) NOT NULL AUTO_INCREMENT,
name   VARCHAR(32) NOT NULL DEFAULT '',
PRIMARY KEY  (id),
INDEX name (name),
INDEX other_key (other)
)
ENGINE=FEDERATED
DEFAULT CHARSET=latin1
CONNECTION='federatedTablelink/test';

引用类似主题的MySQL文档如下:

https://dev.mysql.com/doc/refman/5.6/en/federated-usagenotes.html

https://dev.mysql.com/doc/refman/5.1/en/federated-create.html