python 取oracle資料轉存至mysql

2022-06-26 07:06:09 字數 1749 閱讀 8777

由於grafana的oracle外掛程式需要付費,所以只能想想辦法,於是就用oracle的資料轉到mysql資料庫裡面。

其實也很簡單,需要提前安裝好python和oracle資料庫驅動cx_oracle 和mysql 驅動,具體可以自己搜尋。

指令碼如下

#!/usr/bin/python

# -*- coding: utf-8 -*-

import cx_oracle #匯入包

import mysqldb 

import sys

import logging

#解決中文亂碼

import os

os.environ['nls_lang'] = 'simplified chinese_china.utf8'

#os.environ['nls_lang'] = 'simplified chinese_china.al32utf8'

def oracle_cnn():

tmp = read_conf(2)

try:

db = cx_oracle.connect(tmp[1],tmp[2],tmp[3]) #連線資料庫

print "oracle connect ok~"

cur = db.cursor() # 游標操作

cur.execute('select * from cnt') # 執行sql語句

rows = cur.fetchall() # 獲取資料

list = rows

otmp = "oracle select:"+str(len(list))

log_print(otmp)

cur.close()

db.close()

return list

# 列印資料

# print str(list).decode('string_escape')

#read conf

def read_conf(tmp):

if(tmp == 1):

file_object = open('/root/py/mysql.conf')

try:

msql = file_object.readlines( )

msql = deal_list(msql)

return msql

except exception,e:

print e

log_print(e)

file_object.close( )

if(tmp == 2):

file_object = open('/root/py/oracle.conf')

try:

osql = file_object.readlines( )

osql = deal_list(osql)

return osql

except exception,e:

print e

log_print(e)

file_object.close( )

#deal the list

def deal_list(list):

# print list

for line in range(len(list)):

list[line]=list[line].strip('\n')

if(list[line] == ''):

list.remove('')

return list

mysql_cnn()

VBA 從oracle取資料

private sub btn查詢 click dim conn as new adodb.connection dim strconn as string strconn provider oraoledb.oracle.1 user id strconn strconn txt使用者名稱.val...

Python資料爬取

二.scrapy爬蟲框架 資料 網路資料採集模型 第三方庫實現爬取 pyspider爬蟲框架 scrapy爬蟲框架 安裝scrapy 配置scrapy環境變數 建立scrapy專案的命令 建立spider 使用python指令碼執行命令列啟動爬蟲 from scrapy.cmdline import...

大資料 Python資料爬取

xpath語法 二 xpath選擇器 爬取從頁面提取的url scrapy的item模組 將爬取資料儲存到檔案中 爬取動態網頁 反爬蟲 爬蟲的反反爬策略 user agent介紹 cookie的介紹 檢視cookie 使用cookie使爬蟲突破登入限制 網路資料採集模型 pyspider爬蟲框架 s...