スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

PostgreSQL テーブルのコピー

既存テーブルを基に新しいテーブルを作成する場合、
CREATE TABLE B AS SELECT * FROM A WHERE <条件>;

→全レコードをコピーしたい場合はWHERE句を省略
のようなSQLを利用することになると思いますが、PostgreSQLで以下のようにテーブルをコピーできないか?
という問い合わせが来ました。

・同じDB内に別名のテーブルとしてコピーする。
・テーブルの中身はコピーしない。
・制約/インデックスもコピーする。

現状、pg_dumpでテーブル定義をテキストでダンプし、そのテキストのテーブル名を別名に変えてリストア、という方法で実現しているようなのですが、より簡単にテーブルをコピーできないものだろうか…、という相談でした。

ちょいと調べてみたところ、CREATE TABLE文でLIKE句を使えば上手くいくことが分かり、その内容を伝えて無事に解決しました。
CREATE TABLE B (LIKE A INCLUDING DEFAULTS INCLUDING CONSTRAINTS INCLUDING INDEXES);

※INCLUDING句は、バージョンによって差異があります。
※バージョン8.3の環境で確認したところ、外部キー制約はコピーされませんでした。
CREATE TABLE(PostgreSQL 9.3.2)
スポンサーサイト

JMeter

新卒以来、SEとしてクラサバ系システムに携わってきましたが、今期からWeb系システム開発に関わるようになりました。

そのため、訳の分からないことだらけで、今のところ新たな職場で殆ど役に立っていません。

ま、そういうことは置いておいて、Web系のシステムということは、同時アクセス数が多い又は事前に見積もれないことが多いので、負荷をかけた性能試験を事前に行う必要になります。

HTTPレスポンスの性能評価でよく使われるツールとして、「JMeter」というものがありますが、それを使って性能試験を行うことになりそうなので、役立ちそうなサイトを書き残しておくことにします。

JMeter の利用方法(1) – Ramp-up、スレッド数、ループ回数の誤用
JMeter の利用方法(2) – テスト結果の確認方法
JMeter の利用方法(3) – 負荷テスト中に何を監視するのか?
JMeter の利用方法(4) – タイマによるスループットの制限方法

11gR2のアップグレード

1か月以上前に確認した内容です。

PCにインストールしているOracle Clientを11.2.0.1→11.2.0.3へアップグレードしようとしたところ、
『INS-30071』のエラー・メッセージが表示されアップグレードできませんでした。

その際に行った作業は、以下の通りです。

1. 以下にアクセスし、「p10404530_112030_WINNT_3of6.zip」をダウンロード
  https://updates.oracle.com/download/10404530.html

2. ダウンロードしたzipファイルをPC上で解凍

3. 解凍したフォルダの「p10404530_112030_WINNT_3of6¥client¥setup.exe」を実行

4. インストール・モードの選択画面で、「アップグレード」を選択し「次へ」をクリック

5. インストール場所の指定画面で、ソフトウェアの場所にOracleホーム・ディレクトリが設定されていること
  を確認し、「次へ」をクリック
  →『[INS-30071]実行中のプロセスまたはサービスを判別しようとしてエラーが発生しました。』
   のエラー・メッセージが表示される。



どうやら製品不具合が原因で、11.2.0.x にPSRを適用すると発生する事象のようです。
"INS-30071" Error During Upgrade Oracle Client or Server From 11.2.0.2 To 11.2.0.3

11gR2のPSRでは、これまでのアップグレードだけではなく、完全インストール(新規インストール)も可能になったようですが、製品不具合でアップグレードはできないみたいです。。
仕方がないので、既存の11.2.0.1を削除して、11.2.0.3のPSRでインストールし直しました。

今回はClientで発生しましたが、Serverも同様みたいです。

OSS-DB Gold

OSS-DB Gold

去年、会社がバウチャーを購入してくれて、前回のOSS-DB Silverは、そのバウチャーで(つまり、自腹を切らずに)受験していました。

そのバウチャーの期限が9/13までということで、他にOSS-DBを受ける人もおらず1枚余っていたので、ダメ元で受けてきました。

Gold向けの対策本が存在しないので、どのような問題が出るか不明だし、業務上でPostgreSQLを使いまくっているわけでもないので、合格する自信もなく、前日まで勉強らしい勉強を全くしていませんでした。

ただ、せっかく受けるんだからということで、試験当日の朝から受験時刻の夕方まで、6月に受けた研修の本を読み込んで、自分なりに整理して短期記憶に詰め込みました。

受験のために休暇を取ったものの、前日に財布を忘れていたので、わざわざ会社に寄ってから・・・前回同様に自宅から最も近くにある「九品仏駅前テストセンター」に向かいました。。

試験時間はSilverと変わりませんが、問題数は30問。

結果は、
・合格ライン:70%
・正解率:70%(一般運用管理:77%、性能監視:55%、パフォーマンスチューニング:100%、障害対応:50%)
で、何とギリギリで合格することができました。

パフォーマンスチューニングが良かったのは、これまでのRDBに関する知識を活かせた、ということでしょうか。。
それ以外は結構ボロボロで、パフォーマンスチューニングで何とか帳尻を合わせたという感じですね。

合格したからといって、正直PostgreSQL使いだと胸を張れないのですが、今後の業務でガッツリ関わっていけるといいなと思います。

OSS-DB Silver

OSS-DB Silver

OSS-DB試験を受けるには、Oracle Master等と同様に、ビアソンVUEで申し込むことになります。

都内であればアチコチに会場があって、今回は自宅から一番近い九品仏駅前テストセンターで受けてきました。
自宅からだと、東急大井町線で2駅、徒歩で行けば30分かからないぐらいでしょうか。

九品仏はごく普通の商店街&住宅街だけあって、ごく普通のマンションの2階が会場になっていて、しかも老夫婦二人で切り盛りしている風な庶民派の会場でした。
これまで行ったことのある会場は、IT系の教育を提供している会社が併せて試験会場も提供している、という所ばかりだったので、少々戸惑いました。

試験対策本である緑本には、90分50問と記載がありましたが、実際は80分50問でした。
ま、80分もあれば十分に時間が余るので、全く問題ありませんでしたが。

結果は、
・合格ライン:64%
・正解率:92%(一般知識:100%、運用管理:96%、開発/SQL:80%)
で、無事に合格することができました。

緑本を読んでいれば、確実に合格できますね。
巻末の模擬試験は解かぬままでしたが、奇をてらった問題は出てこなかったし、SQLの穴埋めなども出てこなかったので、事細かく暗記しておくことはないと思います。

OSS-DB Goldも、今期中に取得できるといいな。
NEXT≫
プロフィール

あんま覚えてへんわ


「あんま覚えてへんわ」です。

最新記事
最新コメント
月別アーカイブ
カテゴリ

openclose

カレンダー
06 | 2017/07 | 08
- - - - - - 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 - - - - -
ブログ内検索

アクセス数
アクセスランキング
[ジャンルランキング]
日記
9237位
アクセスランキングを見る>>

[サブジャンルランキング]
会社員・OL
1737位
アクセスランキングを見る>>

天気予報
QRコード
QR
RSSリンクの表示
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。