データベース
以前にこちらの記事で、EXPLAIN PLANによる統計情報の取得方法をまとめました。 quotto.hatenablog.com 今回はもう一つの実行計画取得方法である、AUTOTRACEの利用方法についてまとめます。 なおAUTOTRACEはSQL*PlusおよびSQL Developerの機能であるため、そ…
1年越しにOracleDBで一時表領域の問題にぶち当たり学習したのでメモ。 quotto.hatenablog.com 一時表領域で起こる問題の筆頭と言えば自動拡張を続けディスクを圧迫してしまうことではないでしょうか。 10gまでの復旧方法 10gまでで広く使われている復旧方法…
最近Oracleのパフォーマンスチューニングについて勉強しました。 Oracleのパフォーマンスの鍵となるのが、SQLの実行計画。 SQLを発行した時にどのような実行計画が立てられているのかを確認するには「EXPLAIN PLAN」と「AUTOTRACE」の2種類の方法があります…
ユーザに対して表領域の使用権限(容量)を与えようと、alter userを発行したところ「ORA-01655」なるエラーが発生しました。 SQL> alter user scott quota unlimited on tbs_1; alter user scott quota unlimited on tbs_1 * ERROR at line 1: ORA-02002: e…
前回の記事でOracle Database 12cをインストールしました。 quotto.hatenablog.com まだインストールしただけで、使えるDBインスタンスがありません。 ということで今回はDBインスタンスの作成手順をまとめます。 インスタンスを作る場合はDBCAで実施するの…
前回の記事でOracleDatabase12cのサイレントインストール方法を紹介しました。 スルスルと何事も無く終わっているように見えますが、 もちろん、一発ではできませんでした!(てへっ☆) OSDBAユーザ(oracle)でアイドルインスタンスにつなごうとすると…… $ …
Oracleのパフォーマンスチューニングについて勉強したので記事にしようと思ったのですが、 自宅にOracleの環境がない!! ということでOracleDatabaseのインストールから取り組みました。 最近はGUIで「ポチポチ」っとインストールしていたのですが、コンソ…
ムチャクチャ単純なことなんですが、意外と「どうすればいいんだっけ」となってしまうのでメモ。OracleのPL/SQLでストアドプロシージャを登録する時、一番単純な方法としてはsqlplusからゴリゴリ書いていく感じになります。 # > sqlplus hogehoge/hogehoge@h…
MySQLで作業をした際にログを見ると、時間がおかしいことに気付きました。MySQLを起動して、 $sudo -u _mysql mysql.server start Starting MySQL .... SUCCESS! OSのdateコマンドの結果と $date 2016年 3月31日 木曜日 00時43分31秒 JSTMySQLのログの時間が…
2016/4/10 訂正 InnoDBは「転置インデックス」と書きましたがこれは誤りであり、InnoDBについても「完全転置インデックス」を採用しています。 このことは下記のサイトにも明示されています。 Groonga - InnoDB純正の全文検索エンジンInnoDB FTS またMySQL公…
前回の記事で書いたようにInnoDBによる全文検索では、(特にNGram検索で)「フレーズ検索」によるパフォーマが悪化しやすいです。 quotto.hatenablog.com 「フレーズ検索」とは、指定した順番で単語が出てくる文章のみを抽出する方法です。 例えば「メロン」…
以前の記事でMySQLの全文検索に関して書きましたが、では実際にlikeを用いた検索と比べてパフォーマンスにどの程度違いが出るのか、検証してみました。 前提 環境 Mac OS X、MySQL5.7、ストレージエンジンにInnoDBを使います。 データ or検索用とngramによる…
与えられたキーワードに合致するデータをデータベースから取得することを考えた時、完全一致であれば「=」で検索を行うと思います。では与えられたキーワードを「含む」検索、つまり部分一致を行いたいのであればどうするか。最も簡単なのは「search_column …
とあるOracle関連のトラブルに出くわし、一時表領域について学んだのでメモ。 Oracle Master Silver取っていようが、普段の仕事でDB周り触ってないから基礎知識が全然ありませんでしたという話。 そもそも一時表領域とは Oracleの表領域には3つの種類がある…
Lovemouthの開発は、サーバに中央リポジトリを設置してローカルの端末でクローンリポジトリを作成。そこでテストなどを行なっています。 この時、開発環境にまでスクレイピングの定期ジョブを設定していないため、 ・本番サーバのデータダンプを取って ・ロ…
Oracleサーバを用いてバックアップやバッチジョブなどの,ジョブやタスクをスケジューリングする際に、その都度パスワード等を入力するのは面倒です。 そこでOracle Enterprise Managerでは、それらの情報を自動で提供してくれる優先資格証明が設定できます…
SQL*Plusから問い合わせを行った結果をファイルに出力したい、なんてことは結構あると思います。普段使わないと忘れがちなので、SQL*Plusの問い合わせ結果をファイルへ出力する方法をまとめておきます。 spoolコマンドによるファイル出力 出力ファイルの指定…