一起学微软Power BI系列-使用技巧(1)连接Oracle与Mysql数据库

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介:

  说起Oracle数据库,以前没用过Oracle不知道,但是这1年用Oracle后,发现真的是想狂吐槽,特别是那个.NET驱动和链接字符串,特别奇葩。总归是和其他数据库不一样,标新立异,不知道为何。另外如果想去Oracle官网搞点东西,比啥都难,密码设置强度要求很高,经常记不住,每次都是重置密码再进去,总是要费周折。好在.NET的驱动中,现在已经有纯托管驱动(Oracle.ManagedDataAccess.dll)方便了不少,备受折磨的朋友赶紧去切换吧,很简单,几个命名空间换一个就好了。总算做了一回好事。

    不过今天要给大家介绍的是如何在Power  BI中连接Oracle数据库,很多做Power BI的不一定都搞过开发,所以这个链接估计还是坑了不少人,所以把过程写一下吧,让其他人少踩坑,免得还说Power BI垃圾,其实都是Oracle搞的鬼。不吐槽了,进入主题。

1.关于Power BI的版本信息

  Power BI官网提供了32bit和64bit的版本,以及不同语言的版本,目前是有中文版的,英文版毕竟不习惯,7月份有过小更新,大家可以下载相应最新版本。

  其次连接Oracle数据库和Power BI的版本以及Oracle驱动版本相关。这个之前没注意,好在我的版本都是匹配的。如果不知道自己Power BI安装的什么版本,可以在 文件-关于中查看,如下图所示:

2.Power BI连接Oracle踩坑记

  然后开始踩坑之旅,连接Oracle,从下面这个地方选择进入,目前支持的数据源非常多,尽情享受吧。如下图:  

  选择后,会进入下面界面,没看过相关文章的人,或者没接触过Oracle的人肯定懵逼。。。我也懵逼了好久:

  

  我尝试输入完整的Oracle数据库连接字符串进去,不行。。。然后不知所措了,然后放弃了,当时也狂吐槽,也不提示下咋填。。。过了几天才想起来去Bin个搜索了一下,当日百度也试过,无果。果然发现了些踪迹。然后有了下面完整的解决方法。参考的解决方法在第三节的参考文献中,英文的,不过看部分就应该清楚了。

2.1 安装Oracle版本的驱动

  首先要按照Oracle版本的驱动,所以这里又是坑,如果开发中用了纯托管驱动,谁还安装这鬼东西,好在自己开发环境比较全,都安装了。我在后面体提供我使用的一个版本的32bit驱动下载,谁有64bit的提供一个,我是非常不想进Oracle那个网站。安装好之后,在按照目录下,在XX\product\11.2.0\client_1目录下,找到tnsnames.ora文件,如果没有,就从Sample文件夹中复制一个出来,改一下。其实这里和配置PL/SQL是一样的。在这里添加Oracle的连接。如果没有添加,直接连接,会出现下面错误。

2.2 连接Oracle的正确方法

  配置tnsnames.ora文件的示例我给一个本地数据库的例子,大家看看

1
2
3
4
5
6
7
8
ORCLK =
   (DESCRIPTION =
     (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
     (CONNECT_DATA =
       (SERVER = DEDICATED)
       (SERVICE_NAME = orcl)
     )
   )

  然后打开Power BI连接Oracle数据库,如下图所示,在服务器那里输入配置名称  ORCLK,然后在高级选项中,设置你要获取数据的SQL语句,其实这里非常灵活,在以后在操作和实战中再讲。 

  点击确定后,第一次会出现权限验证,选择数据库,输入用户名和密码,连接即可:  

  正常情况下会获取到数据,并显示编辑界面,就是Power Query的功能,可以进行列修改和一些操作。如下图,由于我这里是做例子,没有用真实数据,所以显示是空白的。  

3.连接Mysql数据库 

  连接Mysql就相对简单多了,输入服务器地址,和用户名密码就好了,我这里举个例子演示一下。So Easy,我用的是本地的Mysql数据库。过程和Oracle类似:

 

4.参考文献与资料 

Oracle 32bit驱动,下载地址:http://pan.baidu.com/s/1i4GNyKH 密码:i4z6

  个人建立的Power BI技术群,目前正在学习阶段,有兴趣的朋友可以一起学习讨论。 


本文转自叶小钗 h数据之巅博客园博客,原文链接:http://www.cnblogs.com/asxinyu/p/Power_BI_Skills_Connect_Oracle_Mysql.html,如需转载请自行联系原作者

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
10天前
|
Oracle 关系型数据库 数据库
数据库数据恢复—Oracle数据库文件出现坏块的数据恢复案例
打开oracle数据库报错“system01.dbf需要更多的恢复来保持一致性,数据库无法打开”。 数据库没有备份,无法通过备份去恢复数据库。用户方联系北亚企安数据恢复中心并提供Oracle_Home目录中的所有文件,急需恢复zxfg用户下的数据。 出现“system01.dbf需要更多的恢复来保持一致性”这个报错的原因可能是控制文件损坏、数据文件损坏,数据文件与控制文件的SCN不一致等。数据库恢复工程师对数据库文件进一步检测、分析后,发现sysaux01.dbf文件损坏,有坏块。 修复并启动数据库后仍然有许多查询报错,export和data pump工具使用报错。从数据库层面无法修复数据库。
数据库数据恢复—Oracle数据库文件出现坏块的数据恢复案例
|
23小时前
|
关系型数据库 MySQL 数据库
6-2|测试连接数据库的命令
6-2|测试连接数据库的命令
|
1天前
|
SQL 关系型数据库 MySQL
ThinkPHP6 连接使用数据库,增删改查,find,select,save,insert,insertAll,insertGetId,delete,update方法的用法
本文介绍了在ThinkPHP6框架中如何连接和使用数据库进行增删改查操作。内容包括配置数据库连接信息、使用Db类进行原生MySQL查询、find方法查询单个数据、select方法查询数据集、save方法添加数据、insertAll方法批量添加数据、insertGetId方法添加数据并返回自增主键、delete方法删除数据和update方法更新数据。此外,还说明了如何通过数据库配置文件进行数据库连接信息的配置,并强调了在使用Db类时需要先将其引入。
ThinkPHP6 连接使用数据库,增删改查,find,select,save,insert,insertAll,insertGetId,delete,update方法的用法
|
1天前
|
SQL 关系型数据库 数据库连接
php连接数据库之PDO,PDO的简单使用和预定义占位符的使用以及PDOStatement对象的使用,占位符的不同形式,bindValue和bindParam绑定预定义占位符参数的区别
本文介绍了PHP中PDO(PHP Data Objects)扩展的基本概念和使用方法。内容包括PDO类和PDOStatement类的介绍,PDO的简单使用,预定义占位符的使用方法,以及PDOStatement对象的使用。文章还讨论了绑定预定义占位符参数的不同形式,即bindValue和bindParam的区别。通过具体示例,展示了如何使用PDO进行数据库连接、数据查询、数据插入等操作。
php连接数据库之PDO,PDO的简单使用和预定义占位符的使用以及PDOStatement对象的使用,占位符的不同形式,bindValue和bindParam绑定预定义占位符参数的区别
|
1天前
|
SQL 关系型数据库 MySQL
php学习笔记-连接操作mysq数据库(基础)-day08
本文介绍了PHP中连接操作MySQL数据库的常用函数,包括连接服务器、设置字符集、关闭连接、选择数据库、结果集释放、获取影响行数以及遍历结果集等操作。通过书籍查询的实例演示了如何使用这些函数进行数据库操作,并提供了一个PHP操纵MySQL数据库的模板。
php学习笔记-连接操作mysq数据库(基础)-day08
|
3天前
|
SQL JavaScript 关系型数据库
Node服务连接Mysql数据库
本文介绍了如何在Node服务中连接MySQL数据库,并实现心跳包连接机制。
14 0
Node服务连接Mysql数据库
|
2天前
|
SQL Oracle 关系型数据库
Oracle数据库管理:从入门到精通
表(Table):表是Oracle数据库中存储数据的基本结构单元,由行(Row)和列(Column)组成。每行代表一个记录,每列代表一个字段。 SQL(Structured Query Language):SQL是Oracle数据库的核心语言,用于与数据库交互,执行查询、插入、更新和删除等操作。 数据库实例与数据库:在Oracle中,数据库实例是一组后台进程和内存结构,用于管理数据库并提供服务。而数据库则是数据的物理存储,包括数据文件、控制文件、联机日志和参数文件等。
16 0
|
4月前
|
传感器 数据可视化 搜索推荐
瓴羊Quick BI助力深圳光明环境水务公司举办水务数据应用大会暨第二届“光环杯”BI应用大赛
瓴羊Quick BI助力深圳光明环境水务公司举办水务数据应用大会暨第二届“光环杯”BI应用大赛
107 0
|
4月前
|
BI
Quick BI V5.0发布:一键解锁智能小Q等全新智能商业分析能力
Quick BI V5.0发布:一键解锁智能小Q等全新智能商业分析能力
191 0
|
2月前
|
数据可视化 安全 搜索推荐
干货|FESCO Adecco外企德科:Quick BI打造战略管理“观数台”(2)
干货|FESCO Adecco外企德科:Quick BI打造战略管理“观数台”

热门文章

最新文章