データベース

2017/07/26

MySQLのインデックス周りでちょいメモ

【はじめに】大昔に書こう思って放置していた件なので情報が古かったらごめんなさい。  続きを読む

tsutaken at 11:55|PermalinkComments(0)

2017/01/25

MySQLは再起動してもキャッシュを復旧できる(*゚∀゚)カコィィ!

つい先日知りました。
どうやら、MySQL5.6.3からできるようになった模様。

具体的には、以下の起動パラメータをONにすれば良いみたいです。

innodb_buffer_pool_dump_at_shutdown
innodb_buffer_pool_load_at_startup

詳細はリンク先を参照ください。

最近、こういったネタに触れる機会もめっきり減ってきた気がする(T-T)
MySQLのリファレンスマニュアルも、なんだか見やすくなってない?気のせいかな??
この辺りはOracleの底力的なものなんでしょうか。

ただ、場合によっては起動時のロードをOFFにする方もいらっしゃるようです。
前提として、InnoDBのバッファプールをウォームアップするのは重い処理です。
・100GBのバッファプールを温めるには100GBの読み取りが必要です。
・なのでそれなりに時間がかかることがあります。
・その間フォアグラウンドスレッドの動作を遅くすることがあります。

バッファプール100GBか、、、私の絡んでるシステムとは異なるようで(^^;


tsutaken at 11:50|PermalinkComments(0)

2011/09/07

Oracle Databaseでエクスポート出力先を変更する方法

以前書きましたが、
Oracleの旧エクスポート機能(exp)は10gR2からサポートされなくなりました。

そんな訳で、これからはOracle Data Pumpのエクスポート(expdp)コマンドを使う訳ですが、
こいつの出力先はディレクトリオブジェクトとして管理されているそうな。

で、出力先ディレクトリを変更するには、以下のSQLを使いました。

CREATE OR REPLACE DIRECTORY "DATA_PUMP_DIR" AS '/hoge/fuga'

ええ。ただのメモですが、何か?┐( ̄ヘ ̄)┌

tsutaken at 12:35|PermalinkComments(1)

2011/03/09

MySQLのInnoDBログとバイナリログを混同していた件

完全に混同してた。
というか、別物だと認識できていなかった。。。

忘れないようにメモしておきます。

◆InnoDBログ
 更新処理の高速化に使われる。いわゆるWAL(Write Ahead Log)はこちら。
 MySQLがクラッシュした際のリカバリ処理にも利用される。
     
 ・InnoDBログファイル - MySQL Practice Wiki


◆バイナリログ
 レプリケーションのMaster → Slave同期処理に利用される。
 また、バックアップデータ復元後のロールフォワード処理にも利用される。
 ただし、出力することで若干の性能低下がある。

 ※詳細はこちら
 ・MySQL :: MySQL 5.1 リファレンスマニュアル :: 4.11.4 バイナリログ


ちっきしょー!
新婚だからって、そんな眼でみるなよ!!(?)w

tsutaken at 12:51|PermalinkComments(0)

2010/11/04

MySQL5のshow statusにはスコープがある

ある日の1コマ。

質問:
MySQLのshow statusと、
mysqladmin extended-statusの結果が違うのはナゼ?

回答:
MySQL5のshow statusにはスコープがあり、
実際には以下2つのコマンドがあります。

・show session status
 現在の接続に対する情報が出力される

・show global status
 これまでの全接続に対する情報が出力される

で、単純にshow statusと打つと、
sessionの方が実行されるので注意しましょう。


・・・( ゚Å゚)ホゥ


See also:
http://dev.mysql.com/doc/refman/5.1/ja/show-status.html


tsutaken at 23:52|PermalinkComments(0)

2009/11/14

Oracle Enterprise Managerを再構成する方法(Windows版)

ひょんなことから、Windowsサーバ上のOracle移行をやることになり、
あれこれやっているうちに、Enterprise Managerが起動しなくなった(汗)

仕方なく、Enterprise Managerの再構成を実施したのでメモ。

Oracleのバージョン : 10.1.0.2.0
続きを読む

tsutaken at 23:50|PermalinkComments(0)

2009/05/10

Oracle Database 11gからの変更点

Oracle Databaseの10g → 11gの間で、色々と変更があったようなのでメモ。

1.ユーザパスワードが大文字/小文字を意識するようになった

2.これまでのエクスポート機能(exp)がサポートされなくなった
  実は10gR2からサポート対象外らしいです。。。(既に常識??)

  元ネタは以下の資料
  http://otndnld.oracle.co.jp/products/database/oracle11g/pdf/datapump11g2007_techover.pdf

3.ユーザパスワード有効期限のデフォルト値が180日になった(※)
  うわ〜。危ないな〜。

4.証跡取得機能がデフォルトONになっている(※)
  初期化パラメータaudit_trailのデフォルト値が none → db に変更された。
  初期状態だと、SYS.AUD$テーブルのデータが増え続け、SYSTEM領域が圧迫されるみたい。

5.初期化パラメータにMEMORY_MAX_TARGETができた
  これは以前も取り上げました。

なお、(※)はdbcaからのデータベース作成時、以下の通りに設定すれば、
10gと同じ状態(有効期限:なし&証跡OFF)に設定できます。
(初期状態では、上が選択されているので変更が必要)

OracleDB11gを10g同様に使うDB作成設定


色々あるな〜。もしかして、他にも…?

【2009/05/31追記】
1点書き忘れ。EnterpriseManagerが、httpからhttpsになってた。

tsutaken at 15:53|PermalinkComments(0)

2009/04/12

Oracle DatabaseのJA16SJISには2種類ある

ちょこっとメモ書き。
Oracle DatabaseのSJISには2種類がある。

1.JAPANESE_JAPAN.JA16SJIS
2.JAPANESE_JAPAN.JA16SJISTILDE

その違いは、取り出した文字をUNICODEで扱う場合に、「〜」が化けるか否か。

※その他の最新情報は公式マニュアル参照

tsutaken at 17:01|PermalinkComments(0)

2009/02/21

Oracle Database 11gのmemory_max_targetはどこまでいけるのか?(32bit Win版)

Oracle11gのmemory_max_targetを知った時から気になっていたこと。

『標準状態のWindows(32bit)では、最大何MBまで稼動可能なのか?』
を試してみました。
※その為に「Oracleデータベースのパラメータ設定ファイル」を調べてた訳ですw

■利用環境
 OS:Windows Server 2003 Standard Edition SP2
 CPU:Dual-Core Xeon 2.4Ghz
 MEM:3.75GB

何故か、memory_max_target=memory_target=2432MBまで
起動することが確認できました。

OSの制限上、1プロセスあたりは2GBまでしか使えないはずなんですが、
負荷がかかっていない状態では、そこまでメモリ確保に行かないのかも。

まぁ、余裕を見ても、1800MBくらいは設定して良さそうですね(・∀・)


tsutaken at 17:59|PermalinkComments(0)

2009/02/15

Oracle Database 10のパラメータ設定ファイル

Oracleデータベースには、パラメータ設定ファイルが2種類ある。
・pfile → テキスト形式(=直接編集可能)
・spfile → バイナリ形式(=SQLで変更)

で、利用される条件は以下の通り。
●優先順位は、以下のとおりとなっています。
1.. 起動時に指定したpfile:startup pfile='[ファイル]'
2.. spfileSID.ora
3.. spfile.ora
4.. initSID.ora
5.. init.ora

更に、SQLで一方から他方を生成することができる。
・pfile → spfile生成
 SQL> create spfile from pfile;

・spfile → pfile生成
 SQL> create pfile from spfile;

出力場所は
D:\ORACLE\PRODUCT\10.2.0\DB_1\dbs\SPFILEORCL.ORA
とか。

パラメータの検証の時は、起動する状態のpfileを作って取っておけば安心。
pfile一本槍でも良さそうなものですが、稼動中にある程度の変更が効くのはspfileのおかげなのかも(?)

tsutaken at 00:25|PermalinkComments(0)