ぱと隊長日誌

ブログ運用もエンジニアとしての生き方も模索中

インフラ

Linux のディレクトリとファイルのパーミッション組み合わせと振る舞い

パーミッションとその組み合わせ Linux のディレクトリとファイルのパーミッションが組み合わさった時、どうふるまうのかを確認します。 ディレクトリ・ファイル単体 Linux のディレクトリ・ファイルのパーミッション表記で使用される文字は以下の定義がされ…

デブサミ2018「【16-C-3】Gitで安定マスターブランチを手に入れる」聴講メモ

はじめに Developers Summit 2018 (Developers Summit 2018) 【16-C-3】Gitで安定マスターブランチを手に入れる スピーカー:井上 誠一郎 さん [ワークスアプリケーションズ] / 三宅 泰裕 さん [ワークスアプリケーションズ]) の聴講メモです。メモは口頭…

NTTDATATC2017「本当は恐ろしい分散システムの話」聴講メモ

前書き NTTデータ テクノロジーカンファレンス 2017 (NTTデータ テクノロジーカンファレンス2017 デジタルトランスフォーメーション成功のカギ~ Hadoop, Spark, ブロックチェーン | NTTデータのHadoopソリューション) 【テクノロジー】本当は恐ろしい分散シ…

DBTS2017「次世代DB / 分散OLTP(MVCC系)を可能な限り全力で解説」聴講メモ

前書き db tech showcase Tokyo 2017 (db tech showcase Tokyo 2017 | db tech showcase) C31:次世代分散OLTP 次世代DB / 分散OLTP(MVCC系)を可能な限り全力で解説 の聴講メモです。スピーカーはノーチラステクノロジーズの神林さん(@okachimachiorz1)です…

DBTS2017 これからの”本命技術”はこう見つける! まとめ

前書き db tech showcase Tokyo 2017 (db tech showcase Tokyo 2017 | db tech showcase) A12 : KEYNOTE 2 これからの”本命技術”はこう見つける!~ポスト・リレーショナルデータベース時代を読み解くコツ~ のまとめ記事です。本セッションはウルシステムズ…

PostgreSQLの実行計画を読み解くための参考資料集

はじめに PostgreSQLは商用DBに比べて書籍が少なく、まとまった情報が入手しにくいです。また、有志の方がPostgreSQLに関する資料を公開していますが、散在しており、せっかくの有益な情報にアクセスしにくい状況にあります。そこで、本エントリではPostgreS…

pg_rman の「最新の状態までリカバリ」の処理内容

目的 pg_rman で復元ポイントを指定せずにリストアを実行し、PostgreSQLを起動すると、可能な限り障害直前の状態までリカバリされます。pg_rman のマニュアルで「リストア・オプション」の節に以下の説明があります。 --recovery-target-timeline TIMELINE …

pg_rman によるバックアップで、バックアップ対象ファイルのタイムスタンプがシステム時刻より進んでいるとエラーとなる

事象 pg_rman によるバックアップ中に、以下のエラーが表示されて、処理が中断される。 $ pg_rman backup --backup-mode=full --with-serverlog --progress INFO: copying database files Processed 1183 of 1183 files, skipped 0 INFO: copying archived W…

PostgreSQL実行計画のハッシュノードに出力されるバケット数とバッチ数の解説

目的 PostgreSQLの実行計画のハッシュノード(Hash)に出力されるバケット数(Buckets)とバッチ数(Batches)について解説を行います。また、バッチ数とパフォーマンスの関係についても触れます。このテーマについて Pat Shaughnessy さんが英語の解説記事を公開…

PostgreSQLのデータベースクラスタ及びテーブルスペースの関係

はじめに PostgreSQLの「データベースクラスタ」及び「テーブルスペース(テーブル空間)」の関係を説明します。 前提 このエントリではPostgreSQL 9.6のドキュメントをベースに解説します。 データベースクラスタ PostgreSQLにおける「データベースクラスタ…

「SQLパフォーマンス詳解」(原文タイトル:SQL Performance Explained)の紹介と購入時のポイント

本の紹介 「SQLパフォーマンス詳解」(原文タイトル:SQL Performance Explained)はデータベースのBツリーインデックスについて解説しています。インデックスの仕組みから実務に活かせるテクニックまで幅広く取り上げられています。 データベースのインデック…

Windows 10 ProでウィルスバスターとHyper-Vをインストール後、起動時にブルースクリーン(APC INDEX MISMATCH)が表示される場合の復旧手順

事象 Windows 10 Pro 64bit版 で起動時にブルースクリーン(BSoD)が表示される。 表示される停止コードは"APC INDEX MISMATCH"。 何度再起動しても再発する。 再現環境 構成の異なる2台のマシンで再現した。再現した環境の共通項は以下の通り。 真因は不明だ…

Oracle JDBC ドライバのバージョンを管理する

はじめに Oracle JDBCドライバのバージョン管理についてまとめます。 できる限り公式の情報に基づいていますが、推測に頼らざるを得なかった箇所はその旨記載しています。 はじめに 手元にあるOracle JDBC ドライバのバージョンはどうやって調べるのか? OTN…

Oracle Database 12cR1 で列追加した時の行データブロック検証

目的 Oracle Database 12cR1 で列追加を行った時、行データブロックがどのように変化するかを検証する。 予備知識 以下のエントリを読んでおくと理解しやすい。Oracle Databaseでdefault指定の列を追加するときの挙動 - ぱと隊長日誌 Oracle Databaseのバー…

Oracle Database のデータ・ブロックのダンプとその解析

目的 Oracle Databaseのデータ・ブロックをダンプするコマンドは正式にドキュメント化されていない。ただ、断片的な情報がいくつかのエントリで公開されている。このエントリでダンプ方法とその実例、及び解析の概要とさらに詳細を知るためのエントリへのリ…

Oracle Databaseでdefault指定の列を追加するときの挙動

疑問 Oracle Databaseでdefault指定の列を追加すると、長時間のLibrary chache lockが発生すると聞く。これは本当か? 結論 11gR1より前のバージョンでは起こりえた。行追加により既存行が全て更新されるため。11gR1-11gR2ではdefault指定かつNOT NULL制約の…

JJUGナイトセミナー「機械学習・自然言語処理特集!」レポート

2014/12/17に開催された、JJUGナイトセミナー「機械学習・自然言語処理特集!」レポートです。 【東京】JJUG ナイト・セミナー「機械学習・自然言語処理特集!」12/17(水)開催 - 日本Javaユーザーグループ/Japan Java User Group | Doorkeeperスライド資料…

Oracle Database インスタンスとリスナーの起動順序

原則として、Oracle Database ではリスナーを起動した後、インスタンスを起動する。 SQL*Plusを使用してデータベース・インスタンスを起動する前に、次の準備手順を実行する必要があります。 1. データベースが依存するOracleコンポーネントが起動されたこと…

Oracle Database 12c Release 1 の機能評価用検証環境 構築手順

目的 Oracle Database 12c Release 1 の機能評価用検証環境 構築手順を説明します。 Oracleからガイドが提供されていますので、補足する形で説明します。 利用するガイドはこちら。 Oracle VM VirtualBox を用いた Oracle Database 12c Release 1 環境の構築…

Hyper-Vで外部ネットワーク接続に利用するNICを変更する

目的 Hyper-Vで外部ネットワーク接続に利用するNICを変更する手順です。 例えば、無線LANアダプタを増設し、既存の有線LANから切り替えた場合を想定しています。 手順 Hyper-Vマネージャの「仮想スイッチ マネージャー...」をクリックします。 「(コンピュ…

Linuxの / (ルートディレクトリ)はなぜアンマウントできないかを確認する

はじめに Linuxの / (ルートディレクトリ)はシステムが利用しているためにアンマウントできない、と説明されます。このことを実際のシステムで確認します。 Oracle Linux 6.5 にて確認しました。他のシステムでも同様の手順で確認可能と思われます。 ルー…

Oracle Linux / CentOS スワップ領域の拡張方法と周辺知識

目的 Oracle Linux 6.5 のスワップ領域を拡張します。その際、理解しておくべき周辺知識もまとめました。 CentOS 7.0 でも確認しましたが、ほぼ同様の手順・内容でした。 インストールはほぼデフォルトで行いました(パーティションのカスタマイズ無し)。エ…