SQLServer 分布式查询MySQL
这学期开了分布式数据库这门课,开始编程实现,今天调试了一早上,写下此配置文件方便查询。
本文实现的是SQLServer2008 Express 链式添加MySql-5.6.10数据库,进行远程操作。
一、下载安装MySql数据库
下载解压缩MySql安装包,解压之后大约是1G,安装在D盘。用管理员身份打开cmd.exe,换到D:\mysql-5.6.10-win32\bin目录下。
执行下面:
mysqld -install
提示安装成功,恭喜你的MySql已经可以正常使用了,剩下的就是启动操作你的数据库了
从Windows命令行启动MySQL服务器,启动控制台窗口并输入命令:D:\mysql-5.6.10-win32\bin>mysqld -nt
从Windows命令行停止MySQL服务器,启动控制台窗口并输入命令:D:\mysql-5.6.10-win32\bin>mysqladmin -u root shutdown
成功启动之后,打开你的任务管理器,你会看到有一个MySql服务正在运行。
启动MySql服务之后,接下来进行连接数据库:
D:\mysql-5.6.10-win32\bin>mysql -u root // 使用用户名为root,密码为空的根账号登陆mysql操作控制台
Welcome to the MySQL monitor. Commands end with ; or /g.
Your MySQL connection id is 2
Server version: 5.0.67-community-nt MySQL Community Edition (GPL)
Type 'help;' or '/h' for help. Type '/c' to clear the buffer. mysql> quit //quit退出mysql连接
Bye
D:/MySQL/bin>
开启MySQL远程服务,连接好数据库后执行如下代码:
mysql> use mysql;
mysql> GRANT ALL ON *.* TO admin@'%' IDENTIFIED BY 'admin' WITH GRANT OPTION;
这样所以的用户都可以远程访问你的MySQL服务了
本文限于链式添加mysql数据库,关于my.ini配置文件大家去GOOGLE吧
二、下载mysql-connector-odbc-5.2.6-win32.msi驱动程序包
下载安装之后,就有了mysql ODBC驱动包
接下来打开你的控制面板,在搜索里面搜 “管理工具”,如图:

双击打开数据源(ODBC),选择MySQL ODBC 5.2 ANSI Driver驱动配置你的MySQL系统数据源,并且选择你的表

三、打开SQLServer Management进行添加操作
EXEC sp_addlinkedserver
@server = 'MySQLTest', --添加在SQLServer中链式服务器名字
@srvproduct='MySQL',
@provider = 'MSDASQL',
@datasrc = 'myDSN' --在2步骤中添加的数据源名字
GO
EXEC sp_addlinkedsrvlogin
@rmtsrvname='MySqlTest',
@useself='false',
@locallogin='sa',
@rmtuser='mysql的用户名',
@rmtpassword='mysql的密码'
GO
注意:如果Mysql修改密码后必须重新映射一下EXEC sp_addlinkedsrvlogin
到这步如果上面操作都正确,那么你就可以操作你的MySQL远程数据库了
下面是对MySQL执行增删查改的SQL语句,和操作远程SQLServer语句略有不同
SELECT * FROM OPENQUERY (MySQLTest ,'select * from 表名' )
//查询
INSERT OPENQUERY (MySQLTest, 'SELECT id,parentid,level,title FROM 表名')
VALUES ('','0','0','zhangzongqi');
//添加
UPDATE OPENQUERY (MySQLTest, 'SELECT parentid,level,title FROM 表名 WHERE id = 320')
SET parentid = '2',LEVEL=3, title=title+'pct';
//更新
DELETE OPENQUERY (MySQLTest, 'SELECT id FROM 表名WHERE id = 316');
//删除
觉得好用的请赞一个,如果发现有不对的地方,请留言以更正,谢谢~
SQLServer 分布式查询MySQL的更多相关文章
- SQL分布式查询、跨数据库查询
--[方法1]连接服务器方法 --step1 创建链接服务器 exec sp_addlinkedserver 'srv_lnk','','SQLOLEDB', 'ip地址' exec sp ...
- MySQL、SqlServer、Oracle三大主流数据库分页查询 (MySQL分页不能用top,因为不支持)
一. MySQL 数据库 分页查询MySQL数据库实现分页比较简单,提供了 LIMIT函数.一般只需要直接写到sql语句后面就行了.LIMIT子 句可以用来限制由SELECT语句返回过来的数据数量,它 ...
- SQLSERVER 脚本转MYSQL 脚本的方法总结
1.MYSQL(版本为5.6)中SQL脚本必须以分号(;)结尾,这点比SQLSERVER要严谨:关键字与函数名称全部大写:数据库名称.表名称.字段名称全部小写. 2.所有关键字都要加上``,比如 St ...
- SQLSERVER分布式事务使用实例
实例一 尊重原著作:本文参考自http://www.jb51.net/article/43540.htm --BEGIN DISTRIBUTED TRANSACTION [transactionnam ...
- 【SQL】 MySql与SqlServer差异比较(MySql踩坑全集)
本文主要记录将数据库从SqlServer移植到MySql的过程中,发现的各种坑爹问题.以SqlServer为主,记录MySql的差异性. 一.IF语句 首先MySql中的的IF语法不同. IF Con ...
- SQLServer 远程链接MySql数据库详解
SQLServer 远程链接MySql数据库详解 by:授客 QQ:1033553122 测试环境: Microsoft Windows XP Professional 版本2000 Service ...
- MSSQl分布式查询(转)
MSSQlServer所谓的分布式查询(Distributed Query)是能够访问存放在同一部计算机或不同计算机上的SQL Server或不同种类的数据源, 从概念上来说分布式查询与普通查询区别 ...
- SQLServer数据库查询语法
SQLServer数据库查询语法 前言: SQLServer数据库介绍: SQLServer数据库是微软公司推出的一款关系型数据库系统,SQL Server是一个可扩展的.高性能的.为分布式客户机/服 ...
- Atitit 分区后的查询 mysql分区记录的流程与原理
Atitit 分区后的查询 mysql分区记录的流程与原理 1.1.1. ibd是MySQL数据文件.索引文件1 1.2. 已经又数据了,如何分区? 给已有的表加上分区 ]1 1.3. 分成4个区, ...
随机推荐
- Ubuntu/Windows双系统修复引导
Ubuntu/Windows双系统修复引导 首先说明:在Windows存在的前提下安装Ubuntu(或者Ubuntu系列)是不需要修复引导的.因为grub会自动搜索存在硬盘中的系统. 而在Ub ...
- Go语言异步服务器框架原理和实现
Go语言类库中,有两个官方的服务器框架,一个HTTP,一个是RPC.使用这个两个框架,已经能解决大部分的问题,但是,也有一些需求,这些框架是不够的,这篇文章,我们先分析一下HTTP 和 RPC服务器的 ...
- jsp有哪些内置对象?作用分别是什么?分别有什么方法?
JSP共有以下9个内置的对象: request 用户端请求,此请求会包含来自GET/POST请求的参数 response 网页传回用户端的回应 pageContext 网页的属性是在这里管理 sess ...
- ASP.NET MVC 监控诊断、本地化和缓存
这篇博客主要是针对asp.net mvc项目的一些常用的东东做一个讲解,他们分别是监控诊断.本地化和缓存.虽然前两者跟asp.net mvc看上去好像是没什么关联. 但其实如果真正需要做asp.net ...
- ARM指令
语法格式 <opcode>{<cond>}{S} <Rd>, <Rn>,<shifter_operand> {}表示是可选的部分,<& ...
- addrinfo 结构
typedef struct addrinfo {int ai_flags;int ai_family;int ai_sockty ...
- hdu 5057 Argestes and Sequence(分块算法)
Argestes and Sequence Time Limit: 5000/2500 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Ot ...
- 浅析Java中的访问权限控制
浅析Java中的访问权限控制 今天我们来一起了解一下Java语言中的访问权限控制.在讨论访问权限控制之前,先来讨论一下为何需要访问权限控制.考虑两个场景: 场景1:工程师A编写了一个类ClassA,但 ...
- VIJOS P1037搭建双塔[DP]
描述 2001年9月11日,一场突发的灾难将纽约世界贸易中心大厦夷为平地,Mr. F曾亲眼目睹了这次灾难.为了纪念“9?11”事件,Mr. F决定自己用水晶来搭建一座双塔. Mr. F有N块水晶,每块 ...
- 06章 Struts2国际化
1:什么是国际化? 国际化(internationalization)是设计和制造容易适应不同区域要求的产品的一种方式.它要求从产品中抽离所有的与语言,国家/地区和文化相关的元素.换言之,应用程序的功 ...