1. 程式人生 > >【技術支援】開發人員從客戶資料庫環境中匯出資料使用者測試的幾種方法途徑

【技術支援】開發人員從客戶資料庫環境中匯出資料使用者測試的幾種方法途徑

以下是一些批量匯出的方法:

1、客戶是oracle資料庫,使用exp/imp匯出全量庫。

# exp username1/[email protected]:port/tnsname file=bak-ip-sid-owner.dmp log=bak<span style="font-family: Arial, Helvetica, sans-serif;">-ip-sid-owner</span><span style="font-family: Arial, Helvetica, sans-serif;">.log owner=username2 rows=y direct=y;  </span>

說明:

1)username1是客戶提供的僅有訪問許可權的使用者,username2才是所有者。

2)username1必須具有exp_full_database許可權。

3)可以在一臺跳板機上執行,只需要詳細設定好上述命令的ip和port即可。

4)在linux系統的oracle使用者下執行,file和log如果沒有設定路徑,在儲存在oracle使用者的家目錄下。

2、匯出指定表的部分資料。

一般情況下,客戶會提供僅有訪問許可權的使用者來訪問他們的生產資料庫,而且此使用者沒有exp匯出許可權,而且鑑於資訊保安只能匯出部分記錄,而且表中含有複雜資料型別無法使用plsql的資料匯出功能,那就要使用到spool了。

1)登入到各個DB中,使用如下命令查詢庫下所有的使用者。

select * from all_users;
USERNAME USER_ID CREATED
SYSTEM 1 2013/7/23 15:28
SCOTT 11 2013/7/23 15:28
HR 32 2013/7/23 15:28

2)將查詢結果匯出到excel中,使用分列功能進行處理,以便單獨獲取到username列的資料。一般會先過濾掉oracle系統預設使用者(過濾方法可自行搜尋excel功能)
3)利用excel將如下查詢語句和username列的所有資料進行拼接,形成如下樣式(最後一列是拼接的結果):
select * from all_tables t where t.owner = upper(trim(' SYSTEM ')); select * from all_tables t where t.owner = upper(trim('SYSTEM'));
select * from all_tables t where t.owner = upper(trim(' SCOTT ')); select * from all_tables t where t.owner = upper(trim('SCOTT'));
select * from all_tables t where t.owner = upper(trim(' HR ')); select * from all_tables t where t.owner = upper(trim('HR'));

4)在plsql的command模型下執行

a)spool E:\tables-ip-sid.csv

b)複製以上表格拼接後的結果,會自動執行

c)spool off

這樣就能在E盤下找到一個輸出某一db下的所有使用者的表的csv檔案。

5)使用類似第3)步的方法將以下查詢語句和表名進行拼接,形成如下樣式:

select * from  1-Jul  where rownum <= 20;
select * from  A_BDQK  where rownum <= 20;
select * from  A_WHGXLQRY  where rownum <= 20;

PS:因為沒有字串,所有沒有使用另外的單元格拼接,但是要注意空格。

6)同樣使用類似4)的方法,在plsql的command模型下執行spool,輸出E:\datas-ip-sid.csv。

以上就能獲取到每張表的前20條記錄了。

相關推薦

技術支援開發人員客戶資料庫環境匯出資料使用者測試方法途徑

以下是一些批量匯出的方法: 1、客戶是oracle資料庫,使用exp/imp匯出全量庫。 # exp username1/[email protected]:port/tnsname file=bak-ip-sid-owner.dmp log=bak<s

技術支援Oracle plsql的having子句並非都能改寫成where子句。having子句的適用場景。

一句話: group by子句讓聚合函式輸出不同的記錄,having子句優先順序低於聚合函式,其就是用於篩選聚合後的各組值,以彌補where子句的不足。所以,having子句中的條件必須是聚合函式。 例子: update t_userinfo tu set tu.stat

JEECG示例文件使用Kettlemysql向oracle抽取資料

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

技術分享最新小編整理離線分析的大資料技術集錦

大資料相關體系梳理:今天小夥伴突然問我大資料都學習了些神馬?就有了如下的對話,我也決定為她好好解答一下疑問。so,我們今天主要是以離線資料處理的技術為主。 1、zookeeper 大家知道大資料是對海量資料的處理,對於這種海量的儲存一般就會用到分散式叢集,然而分散式環境下常見的問題比如:叢

筆記遞推式得到通項公式的方法

開頭瞎扯 數列這玩意在競賽中考的不少,可以變形一些式子,所以做一個小總結 如果題目中出現了一個數列的式子,將其化為通項公式有可能可以快速求解或者是便於題目變形並發現題目性質 解題套路 對於大部分情況來說可以將題目中給定的式子化為以下5種形式,再套

laravel5.6 laravel中介軟體內生成引數並且傳遞到控制器的2方法

中介軟體方法: /** * 自定義中介軟體: * * @param \Illuminate\Http\Request $request * @param \Closure $next * @return mixed */

PythonPythonlist去重的方法

目錄 方法一: 方法二: 方法三: 方法四: 方法一: 直接使用set def set_duplicate_removal(): lis = [1, 2, 2, 3, 7, 7, 9, 9, 10, 10] lis = set(lis) p

資訊科技2006.12人工耳蝸在噪聲環境更好地識別旋律並改善語音理解的訊號處理策略

本文為美國德克薩斯大學達拉斯分校(作者:KALYAN S. KASTURI)的電子工程碩士論文,共194頁。 人工耳蝸是由植入電極和訊號處理器組成的裝置,設計用於恢復深度耳聾人群的部分聽力。自上世紀70年代初人工耳蝸誕生以來,逐漸得到廣泛普及,因此已經進行了大

CCS模擬如何將CCS模擬時memory資料以Hex、Integer、 Long 、Float、 Addressable Unit型別儲存到PC

2013-12-04 19:07:05 將在CCS中模擬的資料匯入電腦上時,可以選擇不同的資料型別,以便分析,具體方法如下: 在CCS選單中,選擇File—>Data—>Save,彈出以下視窗:                        

Angular4學習--路由傳參二 (在URL傳遞資料)

前言: 上一篇文章已經介紹瞭如何路由傳遞引數的第一種方法:在查詢引數中傳遞引數,這篇文章來分享路由傳遞引數的第二種方式,在URL中傳遞引數。 第一步: 1.修改app-routing.modu

類反射類的呼叫(呼叫類的成員:成員變數、方法、構造方法

★ 構造類物件 使用構造器新建物件。根據指定的引數型別找到相應的建構函式,傳入相應引數呼叫執行,以建立一個新的物件例項。 程式碼演示: package cn.hncu.reflect.t

HDFS支援資料壓縮的方法探討

HDFS支援資料壓縮存在以下幾種方法: 1、在HDFS之上將資料壓縮好後,再儲存到HDFS 2、在HDFS內部支援資料壓縮,這裡又可以分為幾種方法:     2.1、壓縮工作在DataNode上完成,這裡又分兩種方法:            2.1.1、資料接收完後,再壓縮

第十七課 ERC721實踐迷戀貓玩耍到開發

**CryptoKitties(中文名:迷戀貓)**是一款在以太坊區塊鏈上的虛擬養貓遊戲,一經推出就以病毒式的快速擴散,橫掃整個以太坊市場。而這款可愛的遊戲於2018年 2 月 16 日(農曆大年初一)登陸 iOS國區,中文名稱的 “迷戀貓”,皆因 “迷戀”

Oracle資料庫技術支援RAC效能分析 - gc buffer busy acquire 等待事件

概述 --------------------- gc buffer busy是RAC資料庫中常見的等待事件,11g開始gc buffer busy分為gc buffer busy acquire和gc buffer busyrelease。 gc buffer busy acquire是當sess

Microsoft 支援當您嘗試大於 5000 的 TCP 埠連線時收到錯誤 WSAENOBUFS (10055)

一、轉載原文 When you try to connect from TCP ports greater than 5000 you receive the error 'WSAENOBUFS (10055)' Symptoms If you try to set up TCP c

技術拜占庭問題,談區塊鏈技術實現及政務應用

本文,作者首先介紹了拜占庭問題和口頭訊息演算法;其次,詳細討論以HyperLedger1.0為基礎的系統架構和

微信支付——呼叫微信客戶端支付之服務端開發詳解

最近準備上網頁的微信支付,大家可以參考後續教程: 2015-09-12 更新: 因微信支付已經升級到V3版本,請大家參考官網的幫助文件。 之前一篇提到微信支付的開發過程,寫得有點亂,現在重新整理一下。 好了,說說到底該怎樣一步一步分享處理。 先把服務端d

技術分享手把手教你使用PowerShell實現一句話Web客戶

譯者:h4d35 預估稿費:200RMB 投稿方式:傳送郵件至linwei#360.cn,或登陸網頁版線上投稿 引言 機動性對於一次入侵來說至關重要。當你將攻擊策略和工具傳送到遠端環境中時,是否能夠保持工具的可用性是資深專家和菜鳥小白的主要區別。關鍵點在於要解決在滲

ADO.NET3、TXT中導入數據到數據庫

split src 分割 img oid data 返回 ring sage private void btnInput_Click(object sender, EventArgs e) { if (opFile.ShowDialog() != DialogR

技術分享手把手教你使用PowerShell內置的端口掃描器

別名 target 實例 white tcpclient 提升 是否 ddb sans 【技術分享】手把手教你使用PowerShell內置的端口掃描器 引言 想做端口掃描,NMAP是理想的選擇,但是有時候NMAP並不可用。有的時候僅僅是想看一下某個端口是否開放。