【发布时间】:2009-12-14 05:14:07
【问题描述】:
我在 VMWare 中使用 ubuntu。我安装了mysql并让它运行。我可以使用用户 root 和密码登录。我有VM盒子的IP。在我写的代码中
使用 MySql.Data; return new MySql.Data.MySqlClient.MySqlConnection("username=root;data source=192.168.100.129,password=xyz");
我还尝试了服务器而不是数据源。我收到异常消息Unable to connect to any of the specified MySQL hosts.
我跑netstat -an | grep -i mysql 看到了
unix 2 [ ACC ] STREAM LISTENING 23404 /var/run/mysqld/mysqld.sock
所以我添加了端口=23404;并尝试了data source 和server。没运气。我确实可以在虚拟机上 ping 该地址(我使用 ifconfig 获得了地址)。那么我的问题是什么,我该如何连接?这是我第一次使用这个。我过去一直使用 sqlite。
【问题讨论】:
-
"username=root;data source=192.168.100.129,password=xyz"很奇怪:为什么分隔符是;然后是,和data source和空格?您是否允许外部连接到 mysql (/etc/hosts.allow)?您可以使用任何 mysql 客户端从您开发的机器上连接吗? -
带空格的数据源是正确的。但是,是的,这需要在主机地址和“密码”一词之间使用分号。
-
我认为这很愚蠢,但从教程中复制了逗号。我改变了它,仍然没有运气。相同的消息。
标签: .net mysql windows linux mysql-connector