今天在尝试在 Linux 系统下使用C#连接数据库,发现网上这方面的信息很少,所以就写一篇博客记录一下。
Linux下这里使用的是mono。
首先是缺少Mysql.Data.dll这个库的,所以需要安装
https://dev.mysql.com/downloads/connector/net/
安装该库的官网如上所示,选择.NET &mono,下载为一个压缩包
然后到该文件的目录下,使用gacutil -i MySql.Data.dll 命令,将库加载到GAC。不知道为什么 ,这里MySql.Data.dll需要让电脑自动补齐名称,不然就会显示The system cannot find the file specified.。
然后的运行指令为如官网所示:
Mysql允许远程连接
参考这篇文章https://www.jianshu.com/p/8fc90e518e2c,比较符合我遇到的情况。
精简为两句话:
grant all privileges on *.* to 'root'@'%' identified by 'password';
flush privileges;
前者为允许任意ip登录任意表。后者为立即生效。
然后需要修改my.cof文件,find /* -name my.cnf找到文件位置 ,
将 bind-address = 127.0.0.1这句话注释掉,然后重起就能远程访问了
C#连接数据库语句:
this.connStr = "server =; user = ; database = ; Port = ; password = ";
this.conn = new MySqlConnection(this.connStr);
this.conn.Open();