因为工作需求,SSRS需要取到MySql数据源,还好有了ODBC。

谷歌了很多,都是不完整的Solution,放上完整版的供大家评价参考。

下面是StepByStep.

问题1、使用ODBC数据源,填入正确的MySql连接字符串,却显示:ERROR [IM002] [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序.

分析:因为系统没有MySql的驱动,所以ODBC无法解析。需要安装MySql-ODBC。一般MySql都是32位的,因此下载32位MySql-ODBC

地址(里面包含32位和64位的文件):http://dev.mysql.com/downloads/connector/odbc/

注意事项:安装过程中有2个小问题,①选择哪个模式安装,typic和complete这2种安装模式都可以,如果想方便,直接下一步。②进度条几乎不动,不要理他,一会就安装OK。

问题2、安装完成之后,再添加数据源,发现,仍然报错。ERROR [IM002] [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序.

如下图。

分析:出现上述问题在于,我们虽然安装好了驱动,但是还没有通过ODBC引用这个驱动。

Solution:通过ODBC管理器添加对MySql的引用。

注意事项:①64位系统有64位的ODBC管理器和32位的ODBC管理器。

64位的就在:控制面板-->管理工具-->数据源(ODBC)

32位的就在:C:\Windows\SysWOW64\odbcad32.exe

其实我很疑惑的一点,看上面文件夹路径明显是64位的ODBC管理器,但是就是找不到64位的MySql-ODBC驱动。

一定要在32位的ODBC中添加对驱动的引用,否则仍然会报错。

如上图,点击系统DSN-->添加-->安装的MySql的2个驱动(2个都引用)

Data Source Name这个要记住,呆会要引用。

TCP/IP Server:服务器IP;Port:MySql端口号,一般默认,如果您在安装MySql服务端做过改变,就填写更改后的端口号。

User,Password 巴拉巴拉一堆填上去,等填完帐号密码,Database就可以选择您的数据库了。点击Test。弹出OK。大功告成。

同样方法引用好2个驱动。然后回到我们的SSRS中添加数据源。

在连接字符串中填入dsn=(上面的Data Source Name),然后添加数据集,然后字段就出现啦。

后续 By 2016-04-18

上面的步骤是在windows 7环境下部属的。

今天在windows server 2008 r2上部属的时候,发现仍然报错。

在网上搜索了一些解决方案,感觉不太靠谱。有些其实靠谱的答案,但是附加了过时的运行时环境,导致有很多误导的地方。

下图提供的链接,下载后安装,可以解决上面的报错。

解决问题之后,我再回过头来理理其他的解决方案。发现其他很多被我尝试过的解决方案也是对的,只不过下面这个链接提供的运行时环境是最新的。以前的都是2010的运行时。有一些环境可能后来又更新过。

mark以备后续使用。

https://www.microsoft.com/en-us/download/details.aspx?id=40784

SSRS使用MySql作为数据源遇到的问题。的更多相关文章

  1. Solr DIH以Mysql为数据源批量创建索引

    演示使用solr管理后台,以mysql为数据源,批量建索引的方法 测试于:Solr 4.5.1, mmseg4j 1.9.1, Jdk 1.6.0_45, Tomcat 6.0.37 | CentOS ...

  2. spring mysql多数据源配置

    spring mysql多数据源配置 @Configuration public class QuartzConfig { @Autowired private AutowireJobFactory ...

  3. Solr搜索引擎 — 通过mysql配置数据源

    一,准备数据库数据表结构 CREATE TABLE `app` ( `id` int(11) NOT NULL AUTO_INCREMENT, `app_name` varchar(255) NOT ...

  4. spring与mysql整合数据源的配置

    需要解决两点,数据源的配置交给spring完成,事务管理交个spring来管理. <context:property-placeholder location="classpath:c ...

  5. MySQL多数据源笔记1-MySQL主从复制

    1.为什么要做主从复制? 1.在业务复杂的系统中,有这么一个情景,有一句sql语句需要锁表,导致暂时不能使用读的服务,那么就很影响运行中的业务,使用主从复制,让主库负责写,从库负责读,这样,即使主库出 ...

  6. MySQL多数据源笔记2-Spring多数据源一主多从读写分离(手写)

    一.为什么要进行读写分离呢? 因为数据库的"写操作"操作是比较耗时的(写上万条条数据到Mysql可能要1分钟分钟).但是数据库的"读操作"却比"写操作 ...

  7. MySQL多数据源笔记3-分库分表理论和各种中间件

    一.使用中间件的好处 使用中间件对于主读写分离新增一个从数据库节点来说,可以不用修改代码,达到新增节点数据库而不影响到代码的修改.因为如果不用中间件,那么在代码中自己是先读写分离,如果新增节点, 你进 ...

  8. MySQL多数据源笔记4-Mycat中间件实战

    Mycat 是数据库中间件,就是介于数据库与应用之间,进行数据处理与交互的中间服 务.由于前面讲的对数据进行分片处理之后,从原有的一个库,被切分为多个分片数据库,所有的分片数据库集 群构成了整个完整的 ...

  9. MySQL多数据源笔记5-ShardingJDBC实战

    Sharding-JDBC集分库分表.读写分离.分布式主键.柔性事务和数据治理与一身,提供一站式的解决分布式关系型数据库的解决方案. 从2.x版本开始,Sharding-JDBC正式将包名.Maven ...

随机推荐

  1. 201621123023《Java程序设计》第3周学习总结

    一. 本周学习总结 写出你认为本周学习中比较重要的知识点关键词,如类.对象.封装等 关键字:面向对象,类,对象,构造函数,封装,继承 用思维导图或者Onenote或其他工具将这些关键词组织起来 二.书 ...

  2. ASP.NET Core中使用自定义验证属性控制访问权限

    在应用中,有时我们需要对访问的客户端进行有效性验证,只有提供有效凭证(AccessToken)的终端应用能访问我们的受控站点(如WebAPI站点),此时我们可以通过验证属性的方法来解决. 一.publ ...

  3. 三,PHP中错误日志display_errors与error_reporting配置

    1,display_errors display_errors 错误回显,一般常用语开发模式,但是很多应用在正式环境中也忘记了关闭此选项.错误回显可以暴露出非常多的敏感信息,为攻击者下一步攻击提供便利 ...

  4. 如何从svn下载以前的项目版本

    showlog 你的项目,找到最老的log的版本号,然后svn co -r 最老的log的版本号 项目地址    

  5. vue element-ui 表格筛选,点击筛选数据

    <el-table-column prop="productEnvVersion" label="运行环境" :filters="this.ru ...

  6. Java 之封装

    预备知识: public:可以被所有其他类所访问 private:只能被自己访问和修改 protected:自身.子类及同一个包中类可以访问 default:同一包中的类可以访问,声明时没有加修饰符, ...

  7. jmeter简单的接口请求

    骤是:在测试计划下面新建一个线程组,线程组下面添加请求,再线程下加入HTTP信息头管理器(如果要求传此参数的话)请求中添加结果和断言 1.打开页面添加一个线程组: 2.线程组中设置参数: 很重要的几个 ...

  8. <b>与<strong> <em>与<i>标签的区别

    <b>与 <strong>用在网页上都能使字体加粗,二者的不同是:<b>是物理元素 ;<strong>是逻辑元素. 物理元素强调的是一种物理行为.比如说 ...

  9. CH6201走廊泼水节

    题目链接: CH6201 [简化版题意]给定一棵N个节点的树,要求增加若干条边,把这棵树扩充为完全图,并满足图的唯一最小生成树仍然是这棵树.求增加的边的权值总和最小是多少. 输入格式 本题为多组数据~ ...

  10. 缩点 CF893C Rumor

    CF893C Rumor 有n个人,其中有m对朋友,现在你有一个秘密你想告诉所有人,第i个人愿意出价a[i]买你的秘密,获得秘密的人会免费告诉它的所有朋友(他朋友的朋友也会免费知道),现在他们想出最少 ...