C#远程访问linux(ubuntu)或windows的mysql数据库
1、远程访问数据库大概模型
2、mysql在win7、linux上如何设置:
2.1、分配权限(linux和win7)
进行mysql命令行,进行分配权限、执行
GRANT ALL PRIVILEGES ON *.* TO Lucy@192.168.1.102 IDENTIFIED BY 123 WITH GRANT OPTION;
ALL PRIVILEGES分配所有的权限,如Select、Insert、Delete、Update、Drop、Create等等
*.*是 数据库.数据库中的表
Lucy是远程机子要访问本计算机的所需要的用户名(这个由mysql分配用户给远程机子,当然,还要通过一下步的3306端口)
192.168.1.102是远程机子的IP地址(这个由mysql指定远程机子哪个IP地址可以让访问)
123是远程机子知道了用户,需要访问的用户密码(这个也是由mysql分配密码给远程机子)
所以也可以归纳为:
GRANT ALL PRIVILEGES ON 数据库.数据库表 TO 远程机用户名@远程机IP IDENTIFIED BY 远程机用户密码 WITH GRANT OPTION;
2.2、打开3306端口
2.2.1、为什么要打开3306端口?
因为防火墙问题,例如:
IIS配置ASP后,局域网的机子不能访问本机的网页(如果默认端口是80),而关掉防火墙就可以。是因为你的80端口没有打开。
而mysql的默认端口3306是默认没有打开的。
2.2.2、为什么我们远程访问SQL的时候,不用打开端口?
因为SQL的端口是默认打开的,而你远程访问SQL数据库的时候,只要知道它的用户名、密码、端口号1433就行了。
2.2.3、如何打开mysql的端口
2.2.4、在win7上,只要在‘入站规则’上建立一个3306端口即可。
控制面板=>管理工具=>高级安全的Windows防火墙=>入站规则
然后新建规则=>选择‘端口’=>在‘特定本地端口’上输入一个‘3306’=>选择‘允许连接’=>选择‘域’、‘专用’、‘公用’
=>给个名称,如:mysqlinput
2.2.5、在linux的ubuntu上,对mysql的配置文件进行配置均可。
按F3(打开命令行)=>输入"sudo vi /etc/mysql/my.cnf"(用vim打开)=>
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address = 127.0.0.1
注释掉bind-address均可,即#bind-address = 127.0.0.1,表示允许通过远程端口3306访问。
=>重启mysql,即在命令行输入"sudo /etc/init.d/mysql restart"
3、客户端(win7或ubuntu下载 MySQL ODBC 3.51 Driver,因为在ubuntu上有人用Mono搞C#,所以ubuntu也提进去)
可以到http://dev.mysql.com/downloads/connector/odbc/3.51.html下载,安装在此不多说了。
安装完后,在win7下怎么看你有了MySQL ODBC 3.51 Driver这个驱动程序呢?(Mono我就帮不了忙了,因为我没有使用过)
控制面板=>管理工具=>数据源(ODBC)=>驱动程序
4、C#方面
这里就简单写一个对方存在的数据库(information_schema是默认存在的),这里用的是asp<喎?http://www.zzzyk.com/kf/ware/vc/" target="_blank" class="keylink">vcD4NCjxkaXYgY2xhc3M9"cnblogs_code">
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.补充:软件开发 , C# ,
上一个:C#中判断某软件是否已安装
下一个:C#制作的屏幕取色器
- 更多SQLServer疑问解答:
- 配置MSSQL复制指定快照文件夹提示:不是有效的路径或文件名
- 详细解读varchar和Nvarchar区别
- SQL SERVER 2005 同步复制技术
- 进程未能大容量复制到表 解决方法
- MSSql实例教程:MSSql数据库同步
- SQLServer2000同步复制技术实现(分发和订阅)
- sqlserver
- SQLSERVER
- 测试 sqlserver 最大用户数连接
- 写出一条Sql语句:取出表A中第31到第40记录(SQLServer,以自动增长的ID作为主键,注意:ID可能不是连续的
- sqlserver2008的安装问题。
- 为什么安装的SQL server 2008我的没有MSSQLSERVER协议啊?
- 怎样把exel表里的数据复制到sqlserver表里
- sqlserver数据库主键和外键问题
- sqlserver 中的左表连接查询和右表连接查询有啥不同?有什么用?