前期准备工作:

我所用的平台是VS2010和Ubuntu 14.04.3  LTS

一、由于MySql并没有集成在VS2010中所以要先安装MySQL Connector Net 6.9.8连接工具,可以在官网上下载,连接如下:http://dev.mysql.com/downloads/connector/net/

二、你安装的目录中你会找到Assemblies这个文件夹,在这个文件夹中你会发现V2.0 v4.0 v4.5文件夹,如果没有表示你安装有问题,我用的.net框架是v4.0所以我查看v4.0中是否有关于MySql的动态链接库,存在则表示我可以在VS上添加这个程序集了。

在VS2010远程连接MySql

1.在C#的项目中添加引用,找到安装MySQL Connector Net 6.9.8连接工具的位置,添加MySql.Data.dll文件,这样就可以在程序中引用using MySql.Data.MySqlClient;

2.由于MySql数据库安装默认3306端口是默认关闭的,监听127.0.0.1,利用sudo vi /etc/mysql/my.cnf编辑my.cnf 注释掉bind-address = 127.0.0.1;利用:sudo netstat –anp|grep 3306查看3306端口是否打开;利用sudo service mysql restart重启MySql;

3.配置MySql后关闭Ubuntu中的防火墙,sudo ufw status查看防火墙状态,如果是活动的则利用 sudo ufw disable关闭(如果Ubuntu中没有ufw指令则利用apt-get install ufw安装防火墙)

4.一切配置好了,在本地安装有数据库的电脑上远程连接,图中的用户test必须有远程访问的权限,给予test远程访问权限的SQL语句:GRANT ALL privileges on *.* to test@’%’ IDENTIFIED by ‘123’;(123是test的密码)之后刷新即可利用FLUSH privileges;

5.在c#中编写如下代码

       using MySql.Data.MySqlClient;
/// <summary>
/// 测试是否能和Liunx上的MySql联通
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnTestMySql_Click(object sender, EventArgs e)
{
string mySqlConn = "host=115.156.186.209;Port=3306;User Id=test;password=test;Database=graduation";
//string mySqlConn = "host=115.156.187.240;User Id=root;password=xue;Database=example";
MySqlConnection myconn = new MySqlConnection(mySqlConn);
myconn.Open();
if (myconn.State == ConnectionState.Open)
{
MessageBox.Show("MySQL Port is Opened!");
}
else
MessageBox.Show("MySql Port is failed!"); myconn.Close();
}
结果如下:

C#在局域网中连接Liunx上的MySql数据库的更多相关文章

  1. Windows远程连接Ubuntu上的MySQL数据库

    原因:mysql安装好后,默认监听3306端口,并且只允许localhost访问,只允许root用户在localhost上登录.   我的环境:                 Ubuntu16.04 ...

  2. Navicat连接服务器上的Mysql数据库

  3. 怎么从docker 内部去连接host 上的mysql

    一般来说数据最好放在一个公共的地方,这样在多个docker 可以共享这些数据. 这篇文章就是讲怎么从docker 内部去连接host上的 mysql 数据库. 因为我的host 有public ip, ...

  4. jdbc连接阿里云服务器上的MySQL数据库 及 数据库IP限制

    问题1:Jdbc 如何连接阿里云服务器上的MySQL数据库? 解决: 上截图: 其中IP是阿里云服务器的公网IP地址. 问题2:   刚开始接手开发的时候,使用Navicat连接阿里云服务器上的数据后 ...

  5. 使用Navicat连接阿里云服务器上的MySQL数据库=======Linux 开放 /etc/hosts.allow

    使用Navicat连接阿里云服务器上的MySQL数据库   1.首先打开Navicat,文件>新建连接> 2,两张连接方法 1>常规中输入数据库的主机名,端口,用户名,密码 这种直接 ...

  6. 使用Navicat连接阿里云服务器上的MySQL数据库--转

    手把手教你如何正确连接阿里云服务器上的数据库: 1.首先打开Navicat,文件>新建连接>MySQL连接,其他的如一图所示. 2.因为是连接服务器上的MySQL,所以我们使用SSH连接, ...

  7. sqlyog连接Linux上的mysql报错误号码2013,错误号码1130的解决办法

    sqlyog连接Linux上的mysql报错误号码2013,错误号码1130的解决办法 1.报错误号码2013,可能是端口号不是默认的3306,需要改成对应的,检查命令是: [root@host et ...

  8. 远程连接服务器上的MySQL

    crt.navicat.Linux系统.MySQL 远程连接上Linux系统,确保Linux系统已经安装上了MySQL数据库.登陆数据库.mysql -uroot -p(密码). 创建用户用来远程连接 ...

  9. 使用Navicat远程连接阿里云ECS服务器上的MySQL数据库

    一.必须给服务器的安全组规则设置端口放行规则,在管理控制台中设置: 之后填写配置,授权对象是授权的IP,其中0.0.0.0/0为所有IP授权,之后保存; 二.Navicat使用的配置 在编辑连接处,要 ...

随机推荐

  1. 如何让MyEclispe中英文切换

    我们通过网上的一些汉化办法汉化了我们的MyEclipse,可是我们有时候想切回英文版怎么办? 方法一:我们可以通过修改MyEclipse配置文件的办法来从中文恢复到英文, -Duser.languag ...

  2. 64位Windows 7平台安装32位Timesten,配置ODBC数据源

    问题: 由于系统版本原因,客户机只能安装32位的Timesten,但客户机的平台是64位的win 7,安装完成后按照常规的控制面板->管理工具->数据源(ODBC)打开的ODBC数据源管理 ...

  3. java日期操作

    //字符串转日期 public static void dt7() throws ParseException { String str_date="2015---08---08" ...

  4. ionic开发android app步骤

    一.android开发 1. 首先要安装node环境,Ionic的安装和后续的许多前端工具的安装都依赖于node的包管理器npm. nodeJs环境的安装很简单,去官网下载最新版的NodeJs直接安装 ...

  5. github 推送时can't be established.

    http://www.xuebuyuan.com/2095099.html 飞凡@FANZ /e/learngit (master)$ git push origin masterThe authen ...

  6. C#自定义Attribute值的获取与优化

    C#自定义Attribute值的获取是开发中会经常用到的,一般我们的做法也就是用反射进行获取的,代码也不是很复杂. 1.首先有如下自定义的Attribute [AttributeUsage(Attri ...

  7. HTML5比较实用的代码

    增强IE兼容性 <!--[if IE]> <script src="http://html5shim.googlecode.com/svn/trunk/html5.js&q ...

  8. php 函数strtr 替换函数实例解析 strtr 速度比较快

    先来看看这个php字符串替换函数 PHP字符串替换函数strtr()的两种状态 strtr(string,from,to) 或者strtr(string,array) 首先针对PHP字符串替换函数st ...

  9. ios7中使用scrollview来横向滑动图片,自动产生偏移竖向的偏移 问题

    ios7中使用scrollview来横向滑动图片,自动产生偏移竖向的偏移 问题     如图红色为scrollview的背景色,在scrollview上加了图片之后,总会有向下的偏移 设置conten ...

  10. Express4 Route笔记

    可以参考Express官网关于路由一节:http://expressjs.com/guide/routing.html 1:通过使用GET.POST方式定义主页路由,app.js: var expre ...