On-Premise Data Gateway - Oracle Alias Data Source
Selama ini power bi reportnya user kan di publish ke Report Server on-premise. Tapi baru-baru ini ada yang butuh power bi reportnya biar bisa di akses dari internet termasuk dari HP gitu. Pake on-premise report server bisa aja sih sebenernya, cuma mesti connect VPN dulu dan harus registrasi devicenya kemana-mana. Akhirnya reportnya dipublish ke Power BI Service.
Pas udah publish, kendala berikutnya data sourcenya ada di on-premise server, ada yang dari file excel di shared folder, ada yang di database yang di on-premise juga. Jadi perlu setup on-premise data gateway di salah satu PC atau server buat jadi gateway dari power bi reportnya untuk connect ke data source lokalan.
Aku udah berhasil setup juga sih on-premise data gatewaynya, tapi report yang dipublish ini tuh data sourcenya dari oracle, dan usernya connect ke oraclenya itu pake alias yang disimpen di file tnsnames.ora. Problemnya, pada saat mau coba connect ke data sourcenya dari Power BI Service gak bisa connect ke data source aliasnya, muncul error gini:
ORA-12154: Cannot connect to database. Cannot find alias NAMAALIAS in DataSources, , EZConnect.\r\nhttps://docs.oracle.com/error-help/db/ora-12154/
Padahal kalau dari local server bisa aja connect ke data sourcenya pake nama alias ini. Setelah cari-cari ternyata penyebabnya itu karna environment variable TNS_ADMIN buat lookup ke file sqlnet.ora sama tnsnames.ora defaultnya hanya melekat ke user yang dipake untuk install Oracle Clientnya, sedangkan service account buat jalanin service on-premise data gateway itu beda.
Jadi solusinya ada dua:
- Ganti service account untuk on-premise data gatewaynya biar run as account yang dipake untuk install oracle client (tapi ini kurang direkomendasikan)
- Buat aja environment variable
TNS_ADMINyang baru tapi di level system jadi biar berlaku untuk semua user. caranya :- Pastikan dulu user yang di pake buat edit environment variable itu punya local admin permission ke windowsnya
- Trus klik
Start Menutrus ketik ajaenvatauenvironment variabletrus pilihEdit the system evironment variable - Nanti muncul gambar di bawah, klik di
Environment Variable
- Setelah itu Klik
Newbagian bawah di tampilan berikutnya
- Isikan
Variable namesamaVariable valuekayak dibawah, tapi variable value disesuaikan aja dengan folder tempat filesqlnet.orasamatnsadmins.oranya
- Trus klik
OK
Setelah environment variablenya dibuat, restart dulu service On-premise data gateway. Trus balik lagi ke settingan Power BI reportnya di http://app.powerbi.com, cek dulu status on-premise data gatewaynya pastiin sudah online baru coba lagi connect ke data source pake nama alias, harusnya sudah bisa.
Silahkan tinggalin komentar kalau ada yang mau ditanyain. Terima kasih.