BlogもどきのWeblog

備忘録と日々の呟きとメモとCGIの実験場とされる何か。
プロフィール

GLANSHE
絵描き担当らしい

Total: 15372
Today: 153
Yesterday: 109
最新の記事

コンテンツ

最新のコメント

最新のトラックバック

カテゴリー

リンク

ニコ動MyListLink

Oracle Database 10g Express Edition
フリーで使えるoracleがあると言うので、その使い方とか制限について調べたメモ

■制限

1. 記憶域
ユーザーデータを格納する記憶域が4GBまでに制限されている。
4G以上データを使うようであれば、シェアウェアの方を使う必要がある。
個人で使うようなシステムで、テキストしか格納しないとかいうなら4Gバイトで十分だと思う。

2. メモリー
利用できるメモリーは最大で1GBに制限されている。
SGAとPGAのサイズを指定することは可能だが、SGAの最大サイズとPGAの合計が、1GBを超えることはできない。

以下引用
SGAはオラクルインスタンスに含まれ、
データベースバッファキャッシュや、 REDOログバッファ、共有プールなどから構成されているメモリ領域のこと。
すなわち、オラクル(インスタンス)を起動した際に確保される領域。
それに対して、PGAは、
ユーザプロセスがDBに接続した際、各サーバプロセス毎に割り当てられるクライアント/サーバ間の処理のためのメモリ領域となる。
すなわち、各ユーザプロセスの接続により確保される領域

・引用元
ORACLE(DB)関連/SGAとPGA

3. CPU
マルチCPUのサーバーでもデータベース・プロセスは1CPUしか使えない。
コアをたくさん乗せてパフォーマンスを上げているマシンでは使いにくい。
しかし、そもそもシングルCPUで動いているマシンならば制限はあってないようなもの。
でも、最近はデュアルコアとかクアッドコアとかが主流だから、影響を受けるのかな。

4. インスタンス
データベース・インスタンスは1つのシステム上で1つのみ。
多数起動してインスタンスをいくつも作ることはできない。
データベースの識別で使われるSIDが「XE」に固定されている。

5. プラットフォーム
Windows、Linuxのみ。ともに32ビット。64ビットは非対応。
…と思ったら出来るらしい?
64ビットでインストール?

6. サポート
当然だが無償なのでサポートは受けられない。

■使い方
Ubuntuにインストールする場合の話

・インストール
/etc/apt/sources.list に、オラクル系のリポジトリを追加

# vi /etc/apt/sources.list

末尾辺りに以下を追加

deb http://oss.oracle.com/debian unstable main non-free

# aptitude update
何か証明書がうんたらとか言われて怒られた。

# aptitude install oracle-xe-universal
途中で信用するかどうかの選択が出たので、Yesと入力した。

とりあえずクライアントも入れてみることに
# aptitude install oracle-xe-client


・設定
# /etc/init.d/oracle-xe configure

Specify the HTTP port that will be used for Oracle Application Express [8080]:
データベース管理を行うアプリケーションのHTTPポート番号
Specify a port that will be used for the database listener [1521]:
データベースリスナーのポート番号

Specify a password to be used for database accounts. Note that the same
password will be used for SYS and SYSTEM. Oracle recommends the use of
different passwords for each database account. This can be done after
initial configuration:
システムが使うパスワードの設定

Do you want Oracle Database 10g Express Edition to be started on boot (y/n) [y]:
oracleを自動起動するか否か


・接続
# su - oracle

$ . /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/oracle_env.sh
$ sqlplus system/(パスワード)@XE

SQL> select * from dual;

とかとか。SQL文の最後に「;」を付けないと、

SQL> select * from dual
  2

とか表示されて意味不明なことになるので注意。


・Web管理画面を外から見えるように

SQL> EXEC DBMS_XDB.SETLISTENERLOCALACCESS(FALSE);

を実行する。

後で接続先のポート番号を変更する場合
Oracle Application Express (APEX) - ポート番号の変更


・インストール時のログ
root@horn:/# aptitude install oracle-xe-universal
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
Reading extended state information
Initializing package states... 完了
The following NEW packages will be installed:
bc{a} oracle-xe-universal
0 packages upgraded, 2 newly installed, 0 to remove and 7 not upgraded.
Need to get 263MB of archives. After unpacking 451MB will be used.
Do you want to continue? [Y/n/?]
WARNING: untrusted versions of the following packages will be installed!

Untrusted packages could compromise your system's security.
You should only proceed with the installation if you are certain that
this is what you want to do.

oracle-xe-universal

Do you want to ignore this warning and proceed anyway?
To continue, enter "Yes"; to abort, enter "No":
Unrecognized input. Enter either "Yes" or "No".
Do you want to ignore this warning and proceed anyway?
To continue, enter "Yes"; to abort, enter "No": Yes
Writing extended state information... 完了
Get:1 http://jp.archive.ubuntu.com intrepid/main bc 1.06.94-3ubuntu1 [73.1kB]
Get:2 http://oss.oracle.com unstable/non-free oracle-xe-universal 10.2.0.1-1.1 [262MB]
Fetched 263MB in 33s (7937kB/s)
未選択パッケージ bc を選択しています。
(データベースを読み込んでいます ... 現在 27097 個のファイルとディレクトリがインストールされています。)
(.../bc_1.06.94-3ubuntu1_i386.deb から) bc を展開しています...
未選択パッケージ oracle-xe-universal を選択しています。
(.../oracle-xe-universal_10.2.0.1-1.1_i386.deb から) oracle-xe-universal を展開しています...
Processing triggers for man-db ...
bc (1.06.94-3ubuntu1) を設定しています ...

oracle-xe-universal (10.2.0.1-1.1) を設定しています ...
update-rc.d: warning: /etc/init.d/oracle-xe missing LSB style header
Executing Post-install steps...

-e You must run '/etc/init.d/oracle-xe configure' as the root user to configure the database.


パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
Reading extended state information
Initializing package states... 完了
Writing extended state information... 完了

root@horn:/# aptitude install oracle-xe-client
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
Reading extended state information
Initializing package states... 完了
The following NEW packages will be installed:
oracle-xe-client
0 packages upgraded, 1 newly installed, 0 to remove and 7 not upgraded.
Need to get 25.9MB of archives. After unpacking 70.8MB will be used.
WARNING: untrusted versions of the following packages will be installed!

Untrusted packages could compromise your system's security.
You should only proceed with the installation if you are certain that
this is what you want to do.

oracle-xe-client

Do you want to ignore this warning and proceed anyway?
To continue, enter "Yes"; to abort, enter "No": Yes
Writing extended state information... 完了
Get:1 http://oss.oracle.com unstable/non-free oracle-xe-client 10.2.0.1-1.2 [25.9MB]
Fetched 25.9MB in 11s (2339kB/s)
未選択パッケージ oracle-xe-client を選択しています。
(データベースを読み込んでいます ... 現在 29710 個のファイルとディレクトリがインストールされています。)
(.../oracle-xe-client_10.2.0.1-1.2_i386.deb から) oracle-xe-client を展開しています...
Processing triggers for man-db ...
oracle-xe-client (10.2.0.1-1.2) を設定しています ...
Executing Post-install steps..........


パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
Reading extended state information
Initializing package states... 完了
Writing extended state information... 完了
root@horn:/# /etc/init.d/oracle-xe configure

Oracle Database 10g Express Edition Configuration
-------------------------------------------------
This will configure on-boot properties of Oracle Database 10g Express
Edition. The following questions will determine whether the database should
be starting upon system boot, the ports it will use, and the passwords that
will be used for database accounts. Press to accept the defaults.
Ctrl-C will abort.

Specify the HTTP port that will be used for Oracle Application Express [8080]:8080

Specify a port that will be used for the database listener [1521]:1521

Specify a password to be used for database accounts. Note that the same
password will be used for SYS and SYSTEM. Oracle recommends the use of
different passwords for each database account. This can be done after
initial configuration:
Confirm the password:

Do you want Oracle Database 10g Express Edition to be started on boot (y/n) [y]:

Starting Oracle Net Listener...Done
Configuring Database...Done
Starting Oracle Database 10g Express Edition Instance...Done
Installation Completed Successfully.
To access the Database Home Page go to "http://127.0.0.1:8080/apex"


time stamp:2010/03/28 17:18:48
トラックバック(0)|コメント(0)
コメントを書く
この記事のトラックバックURL:

mysqlの基本的なこと
・使うデータベースを選択する。

mysql>use test_data_base;

・データベース内のテーブルの一覧を見る。

mysql>show tables;

・テーブルを作る。

mysql>create table test_table( id int(4),value varchar(20) );
引数に関しては、
カラム名 型(上限バイト数)
が一つのカラム。NOT NULLやAUTO_INCREMENTをスペースで区切って設定できたりもする。

・テーブルのカラムの情報を見る。

mysql>show columns flom test_table;

・レコード(データ)をテーブルに入れる。

mysql>insert into test_table(id, value) value(1, 'test_data');

・テーブルに入っているデータを見る。

mysql>select * from test_table;
*をカラム名にすることで、各カラムのデータを見れる。

・idで降順ソート(descを追加で昇順ソート)

mysql>select * from test_table order by id [desc];

・表示する件数の指定(0から10まで取得)

mysql>select * from test_table limit 0,10;

参考文献
MySQLクイック・リファレンス
MySQLメモ - その他


time stamp:2009/04/13 14:42:38
トラックバック(0)|コメント(0)
コメントを書く
この記事のトラックバックURL:

[MHF]ブーブースキル発動まとめ
参照してた場所が無茶苦茶見難かったので自分のところでまとめておく。

■繁殖期
HR共通:ブタせん(10)→モンスターエッグ(5)→ブタせん

■温暖期
HR偶数:ブタせん(5)→米虫(5)→ブタせん
HR奇数:ブタせん(10)→米虫(5)→ブタせん

■寒冷期
HR偶数:レッドオイル(5)→ブタせん(5)→スパイスワーム(5)→ブタせん
HR奇数:ブタせん(15)→ジャンゴーネギ(5)→ブタせん

最後のブタせんべいは発動するまで与え続ければOK

検索用:猟団プーギー 報酬術 必要エサ


time stamp:2008/11/06 12:25:34
トラックバック(0)|コメント(0)
コメントを書く
この記事のトラックバックURL:

[ perl ] open関数の読み書き両用モードの違い
Perlのopen関数でファイルを読み書き両用モードで開く為の記号は、次の3種類があります。

・+<
・+>
・+>>

それぞれの差を理解しないまま今までプログラムを書いてきましたが、いい加減調べたくなって調べてみました。
使ったのは以下のプログラムです。
$kigo = "+<" or "+>" or "+>>";

open(BBB, "$kigo$dir/test0.txt");
seek(BBB,0,0);
@strlist = <BBB>;
@strlist = reverse(@strlist);
seek(BBB,0,0);
foreach(@strlist){
print BBB "$_";
}
close(BBB);

open(READ, "<$dir/test0.txt");
print join('<br>',<READ>);
print "<br><hr>\n";
close(READ);


実際に作ったプログラムはこちら
open.cgi

その実行結果

以下自分が気付いたそれぞれの特徴

■+<
ファイルを開いた後も読める。
開いた直後のファイルポインタは先頭。
@strlist = <FH>;で読み込んだ後のファイルハンドルは末尾。
以前これで、12345の行にに098を書き込んだら09845になった事があったのけどこの結果ではそうなってない。何故?
とりあえずGoogle先生に聞いた限り、読んだ後でtruncateを使った方がよさげ。
truncate perlで検索

■+>
ファイルを開いた時点でファイルが新規作成されているので以前のファイルの内容は読めない。勘違いによるデータ消失に注意。
新規作成されているので、初期のファイルポインタは先頭(と同時に末尾)。
このモードは、新規作成で開いて、ファイルに何かデータを書き込んだ後、その書き込んだデータを再び読み込む事が出来るのが">"との最大の違い。

■+>>
ファイルを開いた後も読める。
但し、開いた直後のファイルポインタの位置が末尾。
seek(FH,0,0);で先頭に移動してやらないと、
@strlist = <FH>;で内容を読み込めないので注意。
但し、ファイルポインタを先頭に戻しても、書き込みをした場合、データが書き込まれるのは末尾からになる。つまり、中のデータを上書きする事は出来ない(と思う)。


間違いがあったら教えて欲しいかも。


■参考文献
とほほのperl入門(リファレンス編)
ファイルハンドルと出力[Perl講座]
Perl初心者コーナー Pert21


time stamp:2008/10/15 21:06:09
トラックバック(0)|コメント(0)
コメントを書く
この記事のトラックバックURL:

メモ
メールの転送(Hotmailに転送出来ない

データの復旧(存在するデータをとりあえず復旧

Dong先生に戻せるデータだけ戻して〜

とりあえずもう一度確認


time stamp:2008/10/06 14:50:01
トラックバック(0)|コメント(0)
 

[Perl]携帯端末の振り分け
携帯端末の振り分け方法

これはPHPだけど、perlに直せば

sub CheckMobile{

 local($env,$ua);

 $ua = $ENV{'HTTP_USER_AGENT'};

 if($ua =~ /docomo/i){
  $env = "i";
 }elsif($ua =~ /kddi/i){
  $env = "ez";
 }elsif($ua =~ /vodafone/i){
  $env = "sb";
 }elsif($ua =~ /softbank/i){
  $env = "sb";
 }elsif($ua =~ /mot-/i){
  $env = "sb";
 }elsif($ua =~ /j-phone/i){
 $env = "sb";
 }elsif($ua =~ /up\.browser/i){
  $env = "ez";
 }elsif($ua =~ /willcom/i){
  $env = "phs;
 }else{
  $env = 0;
 }

 return $env;

}


こんな感じ


time stamp:2008/07/28 03:44:07
トラックバック(0)|コメント(0)
コメントを書く
この記事のトラックバックURL:

何かのメモ
CALM FOREST diary

・8/2の00:20付近のUSER_AGENT(Opera)の確認

・恋姫無双の応援バナーキャンペーンにメール送る


time stamp:2008/07/12 09:04:35
トラックバック(0)|コメント(0)
コメントを書く
この記事のトラックバックURL:

<< old  new >>
何かしら