言葉にできるは武器なるらしい

言葉に文字に残していきます何事も。いつかきっと誰かの役に立つはずだから。

オンプレDBからクラウドDBへの簡単なデータ移行をやってみた

ラクルのオンプレDBからクラウドのDBへデータ移行する方法。
移行といってもテーブルを1個だけオンプレDBからエクスポートして
クラウドにインポートするという実にシンプルなものです。
 
まずはテーブルをエクスポート
sqlplusでオンプレDBに接続し普通にspoolします

spool "C:\絶対パス\output_tablename.csv"
select * from [tablename];
spool off
 
 
<補足>
sqlplusの操作が超初心者だったので下記のようなことをいろいろ知らべて
設定してあります。

set linesize 500; //横一列に表示させる最大文字数
set pagesize 10000; //ページ間のセパレータを非表示
set colsep ',' //カラム間を,で区切る
set feedback off //確認文を表示させない
set echo off //コンソールメッセージの非表示
set trimspool on //各行の右端のスペースを削除する指定
column [columnname] format 0.99 //整数部分が0の小数は0抜けで表示されてしまうのを防ぐ
 
 
これでcsvを出力しました。
 
----------------------------------
クラウド側に同一テーブルを作成
次にインポートする前に事前にクラウド側に入れるテーブルを作成しておく必要があります。
楽な方法としてSQLDeveloperにDDLを作成してもらう方法をとりました。
オンプレDBでSQLDeveloperを開き移行したいテーブルで右クリック
「クイックDDL」>「ワークシートに保存」
とすると同じテーブルを作成するDDLを取得できる。
 

f:id:rodeeeen:20191017013002p:plain

sqld
クラウドDB側にsqlplusで接続し、
上記で取得したDDLを実行し同じテーブルを作成する。
 
----------------------------------
クラウド側にデータインポート
まずはインポート用のctlを作成します。
作成する場所はどこでもいいですが、わかりやすく「C:\絶対パス\import.ctl」と作成しましょう。
import.ctlの中身はこれ

LOAD DATA
INFILE 'C:\絶対パス\output_tablename.csv'
APPEND
INTO TABLE LIQUID
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"'
TRAILING NULLCOLS
(column1,column2,column3,......)
 
 
いよいよインポート実行です。
sqlplusで

sqlldr [username]/[password]@[DBname] control=C:\絶対パス\import.ctl
 
 
インポートがうまくいけば下記のように返ってくると思います。

f:id:rodeeeen:20191017013104p:plain

import

ADWにクライアント端末からSQLPLUSで接続する

やりたいことを絵にするとこんな感じで(超下手な絵でゴメンナサイ...)

f:id:rodeeeen:20191017013207p:plain

fig1
自分のPCからSQLPLUSを使ってクラウド上のADW(Autonomous Data Warehouse)
に接続する。
 
SQLDeveloperを使っての接続はもっと簡単なので別にまとめようと思う。
おおよそ今回の流れは
前提:ADWを構築しクレデンシャルファイル(私はウォレットファイルと呼んでいる)はダウンロード済。
   SQLPLUSは既に自身のPCで利用できる状況
やること:①クレデンシャルzipファイル(ウォレットファイル)を展開し必要な情報の取得とcwallet.ssoの配置
     ②必要な情報をクライアント側の同一ファイルに転記
     ③接続の確認
 
まとめるとたった3行だが、知らないとだいぶ時間がかかりまりました。
 
ではさっそく①から
ADW構築してダウンロードしてきた「Wallet***.zip」ファイルを任意の場所に展開します。
今回必要な情報はこちらの3ファイルになります。
・cwallet.sso
・sqlnet.ora
・tnsnames.ora
 

f:id:rodeeeen:20191017013248p:plain

fig2
まずはcwallet.ssoをPCの任意の場所に格納します。
適当にCドライブ配下にnetwork/adminというフォルダを切って配置しました。
 

f:id:rodeeeen:20191017013313p:plain

fig3
次に必要な情報を下記ファイルから持ってきて一度メモ帳にメモしておきます。
・sqlnet.ora
ウォレットファイルの格納場所を指定する情報をコピーしてメモ
 
・tnsnames.ora
構築したADW名をピックアップしてメモ、たくさんADWを作っている場合、全部のDB名が表示されてくるので
接続したいDB名を探す必要があります。
 
いったんメモした図がこれ

f:id:rodeeeen:20191017013332p:plain

ittanmemo


同じ名前のファイルがクライアントPCにあるはずなので見つけてください。
私の場合18cのEXpressをインストールしてたのでそのアプリ配下にありました。
 

f:id:rodeeeen:20191017013357p:plain

fig4
 
sqlnet.oraに先ほどメモした上の2行を貼り付けます。
ウォレットファイル(cwallet.sso)の格納場所を修正し、上書きします。

f:id:rodeeeen:20191017013441p:plain

fig5

tnsnames.oraにメモした残りの部分(ホスト名の部分)を転記します。一番下に書けばOKです。

f:id:rodeeeen:20191017013515p:plain

fig6

これで設定は完了です。あとはSQLPLUSで接続を確認すればOK。
クラウドのADWに接続するときのコマンドは
 
sqlplus [username]@[dbname]
パスワードを聞かれるので入力すれば接続できるはず。
 
一応わかりづらい説明はここにあるが、プロキシの設定の仕方など書いてあるの要チェック。

OracleDB 18c Expressインストール方法

なんら難しいことはないんだけど、
もともとの経緯はSQLPLUSを使いたかっただけなんだが
Oracle ClientをインストールするよりOracleDB 18c Expressを
インストールしてしまった方が何も考えなくて済む分早く終わると思い
やってみた。
 
OracleDB EXダウンロードはここから
 
 
 
ダウンロードした「OracleXE184_Win64.zip」を任意の場所に展開します。
「setup.exe」を実行。
 
ポップアップでインストーラーがたちがあるのでそれに従い進めていく。
特に変更する項目はなし。(パスワードやインストールフォルダは任意で)
 
 
 
インストールが完了すると再起動しなくても使用できる状態になっている。
試しにsqlplusコマンドをたたいてみる。
 
 

WinShotで画面が切れてしまう時の対処法

保存された画面キャプチャが切れてしまうのを治すのに1時間くらいかかってしまったので
今後のためにメモ。
 
winshotのプロパティを開き
互換性の設定で「全画面表示の最適化を無効にする」にチェックを入れる。
さらに「高DPI設定の変更」を選択し「高いDPIスケールの動作を上書きします」にもチェックを入れる
 
winshotを再起動すれば治っているはず。
 
 

自分のための棚卸メモ

今の職場をやめるため
あくまで自分のために棚卸メモをします。

せっかく覚えた知識や便利なツールなどは
次の職場に行っても使えるから
今後襲ってくる「あー、なんだっけ?前使ってたんだけどあの便利なアレ」
現象をカバーするためです。


・便利なフリーソフト
Tablacus explorer

バイドゥ(下载百度)(中国の有名検索エンジン
https://www.baidu.com/

Google Spreadsheetに新しい行が追加されたらChatworkに通知する
https://qiita.com/sngazm/items/714ac05540c0cfd632ae

・マジExcel超え!Googleスプレッドシートの真の力を解放するスゴ技20選
https://linq.career-tasu.jp/magazine/knowhow-google-spreadsheet-20technique/

・情報処理安全確保支援士 - SE娘の剣 -
http://sc.seeeko.com/archives/cat_116302.html

ドメイン/IPアドレス サーチ 【whois情報検索】
https://www.cman.jp/network/support/ip.html

 

一旦こんなもん、
Tablacus explorerは次の現場で使ってみたいと思ってる。

ホンダに関するニュースまとめ【更新日: 3/25】

「ホンダ」に関するニュース一覧です。

日経電子版に掲載されたニュースから抜粋しています。

(更新日 3/25)

2019-03-17 F1開幕戦、ホンダ勢が11年ぶり表彰台 フェルスタッペン3位
2019-03-15 ホンダ勢のフェルスタッペン4位 F1開幕、フリー走行
2019-03-15 F1GP15日開幕戦 フェルスタッペン、ホンダPUに手応え
2019-03-13 ホンダ、ベア昨年実績下回る1400円で妥結 労使交渉
2019-03-08 ホンダとソフトバンクのIoTバイク、宮古島で発進
2019-03-06 ホンダ、欧州で全四輪を電動化 25年までに
2019-02-26 ハノイを駆け抜ける「ホンダ」(写真でみる永田町)

サムスンに関する日経ニュースのまとめです【更新日: 3/25】

サムスン」に関するニュース一覧です。

日経電子版に掲載されたニュースから抜粋しています。

(更新日 3/25)

2019-03-14 「完全分離プランは韓国で経験」 サムスンの自信
2019-03-12 スマホ停滞「5Gが打破」 サムスン部門トップ
2019-02-13 アジア300指数・11時30分、続伸 米株高が支え サムスン電子高い
2019-02-10 サムスン、8Kテレビ60カ国で販売 19年計画
2019-01-31 サムスン10~12月29%営業減益 半導体は2年ぶり減益