|
ASE 12.5 for Linux Install 〜Step 14 データベースの作成〜
ASE 12.5 for Linux Install
〜Step 14 データベースの作成〜
0.改訂履歴
1.はじめに
このドキュメントでは,ASE12.5 for Linuxで,簡単なデータベースを作成する手順を説明する.
2.デバイスを作成する
bash-2.05$ isql -Usa -Psybase -Spoweredge -Jsjis -zus_english
1>
|
データ格納用デバイスを作成するスクリプト
declare @vdevno int
select @vdevno = max(convert(tinyint, substring(convert(binary(4),d.low), v.low,1))) + 1
from master.dbo.sysdevices d, master.dbo.spt_values v
where v.type = 'E' and v.number = 3
disk init name='TEST_dat01',
physname='/opt/sybase/database/datdevice/TEST_dat01.dat',
vdevno = @vdevno ,
size=5120
|
1> declare @vdevno int
2> select @vdevno = max(convert(tinyint, substring(convert(binary(4),d.low), v.low,1))) + 1
3> from master.dbo.sysdevices d, master.dbo.spt_values v
4> where v.type = 'E' and v.number = 3
5>
6> disk init name='TEST_dat01',
7> physname='/opt/sybase-12.5/database/datdevice/TEST_dat01.dat',
8> vdevno = @vdevno ,
9> size=5120
10> go
00:00000:00008:2002/09/22 19:07:28.95 kernel Initializing virtual device 3, '/opt/sybase-12.5/data
base/datdevice/TEST_dat01.dat' with dsync 'on'.
00:00000:00008:2002/09/22 19:07:28.95 kernel Virtual device 3 started using standard unix i/o.
00:00000:00008:2002/09/22 19:07:28.96 kernel Initializing device /opt/sybase-12.5/database/datdevi
ce/TEST_dat01.dat with zeroes.
00:00000:00008:2002/09/22 19:07:29.10 kernel Finished initialization.
(1 row affected)
1>
|
インデックス格納用デバイスを作成するスクリプト
declare @vdevno int
select @vdevno = max(convert(tinyint, substring(convert(binary(4),d.low), v.low,1))) + 1
from master.dbo.sysdevices d, master.dbo.spt_values v
where v.type = 'E' and v.number = 3
disk init name='TEST_idx01',
physname='/opt/sybase-12.5/database/idxdevice/TEST_idx01.dat',
vdevno = @vdevno ,
size=5120
|
1> declare @vdevno int
2> select @vdevno = max(convert(tinyint, substring(convert(binary(4),d.low), v.low,1))) + 1
3> from master.dbo.sysdevices d, master.dbo.spt_values v
4> where v.type = 'E' and v.number = 3
5>
6> disk init name='TEST_idx01',
7> physname='/opt/sybase-12.5/database/idxdevice/TEST_idx01.dat',
8> vdevno = @vdevno ,
9> size=5120
10> go
00:00000:00008:2002/09/22 19:08:38.60 kernel Initializing virtual device 4, '/opt/sybase-12.5/data
base/idxdevice/TEST_idx01.dat' with dsync 'on'.
00:00000:00008:2002/09/22 19:08:38.60 kernel Virtual device 4 started using standard unix i/o.
00:00000:00008:2002/09/22 19:08:38.61 kernel Initializing device /opt/sybase-12.5/database/idxdevi
ce/TEST_idx01.dat with zeroes.
00:00000:00008:2002/09/22 19:08:38.76 kernel Finished initialization.
(1 row affected)
1>
|
declare @vdevno int
select @vdevno = max(convert(tinyint, substring(convert(binary(4),d.low), v.low,1))) + 1
from master.dbo.sysdevices d, master.dbo.spt_values v
where v.type = 'E' and v.number = 3
disk init name='TEST_log01',
physname='/opt/sybase-12.5/database/logdevice/TEST_log01.dat',
vdevno = @vdevno ,
size=5120
|
1> declare @vdevno int
2> select @vdevno = max(convert(tinyint, substring(convert(binary(4),d.low), v.low,1))) + 1
3> from master.dbo.sysdevices d, master.dbo.spt_values v
4> where v.type = 'E' and v.number = 3
5>
6> disk init name='TEST_log01',
7> physname='/opt/sybase-12.5/database/logdevice/TEST_log01.dat',
8> vdevno = @vdevno ,
9> size=5120
10> go
00:00000:00008:2002/09/22 19:09:40.98 kernel Initializing virtual device 5, '/opt/sybase-12.5/data
base/logdevice/TEST_log01.dat' with dsync 'on'.
00:00000:00008:2002/09/22 19:09:40.98 kernel Virtual device 5 started using standard unix i/o.
00:00000:00008:2002/09/22 19:09:40.99 kernel Initializing device /opt/sybase-12.5/database/logdevi
ce/TEST_log01.dat with zeroes.
00:00000:00008:2002/09/22 19:09:41.14 kernel Finished initialization.
(1 row affected)
1>
|
1> sp_helpdevice
2> go
device_name
physical_name
description
status cntrltype device_number
low
high
------------------------------
--------------------------------------------------------------------------------
-----------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------
------ --------- -------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
TEST_dat01
/opt/sybase-12.5/database/datdevice/TEST_dat01.dat
特別, dsync on, 物理ディスク, 10.00 MB
16386 0 3
50331648
50336767
TEST_idx01
/opt/sybase-12.5/database/idxdevice/TEST_idx01.dat
特別, dsync on, 物理ディスク, 10.00 MB
16386 0 4
67108864
67113983
TEST_log01
/opt/sybase-12.5/database/logdevice/TEST_log01.dat
特別, dsync on, 物理ディスク, 10.00 MB
16386 0 5
83886080
83891199
master
/opt/sybase-12.5/database/sysdevice/master.dat
特別, dsync on, デフォルト・ディスク, 物理ディスク, 128.00 MB
3 0 0
0
65535
sysprocsdev
/opt/sybase-12.5/database/sysdevice/sybsystemprocs.dat
特別, dsync on, 物理ディスク, 100.00 MB
16386 0 1
16777216
16828415
tapedump1
/dev/st0
ディスク, ダンプ・デバイス
16 2 0
0
20000
tapedump2
/dev/st1
テープ, 625 MB, ダンプ・デバイス
16 3 0
0
20000
tempdb_dat01
/opt/sybase-12.5/database/tmpdevice/tempdb_dat01.dat
特別, dsync on, 物理ディスク, 512.00 MB
16386 0 2
33554432
33816575
(8 rows affected)
(return status = 0)
1>
|
3.データベースを作成する
- 作成したデバイスを利用して,データベースを作成する.
1> create database TESTDB
2> on
3> TEST_dat01 = 10,
4> TEST_idx01 = 10
5> log on
6> TEST_log01
7> go
CREATE DATABASE: 論理ページ 5120 (10.0MB) をディスク 'TEST_dat01'
に割り付けています。
CREATE DATABASE: 論理ページ 5120 (10.0MB) をディスク 'TEST_idx01'
に割り付けています。
CREATE DATABASE: 論理ページ 1024 (2.0MB) をディスク 'TEST_log01'
に割り付けています。
1>
|
1> sp_helpdb TESTDB
2> go
name db_size owner dbid
created
status
------------------------ ------------- ------------------------ ------
--------------
----------------------------------------------------------------
TESTDB 22.0 MB sa 4
Sep 22, 2002
オプションはセットされていません。
(1 row affected)
device_fragments size usage
created free kbytes
------------------------------ ------------- --------------------
------------------- ------------------------------
TEST_dat01 10.0 MB データ専用
Sep 22 2002 7:21PM 9006
TEST_idx01 10.0 MB データ専用
Sep 22 2002 7:21PM 10200
TEST_log01 2.0 MB ログ専用
Sep 22 2002 7:21PM 適用できません。
------------------------------------------------------------------------
ログ専用 free kbytes = 2038
(return status = 0)
1>
|
- ログデバイスが2MBしか作成されていない.
- よって,残りの8MB文を追加で定義する.
1> alter database TESTDB
2> log on TEST_log01 = 8
3> go
ディスク TEST_log01 でデータベースを 4096 ページ (8.0 MB) 拡張しています。
警告:ALTER
DATABASEでログセグメントを拡張すると、128ページのラストチャンススレッショルドのログ・セグメントに設定
されたユーザスレッショルドが無効になります。
1>
|
1> sp_helpdb TESTDB
2> go
name db_size owner dbid
created
status
------------------------ ------------- ------------------------ ------
--------------
----------------------------------------------------------------
TESTDB 30.0 MB sa 4
Sep 22, 2002
オプションはセットされていません。
(1 row affected)
device_fragments size usage
created free kbytes
------------------------------ ------------- --------------------
------------------- ------------------------------
TEST_dat01 10.0 MB データ専用
Sep 22 2002 7:21PM 9006
TEST_idx01 10.0 MB データ専用
Sep 22 2002 7:21PM 10200
TEST_log01 2.0 MB ログ専用
Sep 22 2002 7:21PM 適用できません。
TEST_log01 8.0 MB ログ専用
Sep 22 2002 7:23PM 適用できません。
------------------------------------------------------------------------
ログ専用 free kbytes = 10196
(return status = 0)
1>
|
4.セグメントを作成する
1> sp_addsegment dat_seg,TESTDB,TEST_dat01
2> go
Msg 17288, Level 16, State 1:
Server 'poweredge', Procedure 'sp_addsegment', Line 106:
セグメントを追加するデータベースからこのプロシージャを実行しなければなりません。'use TESTDB' を実行
してからもう一度実行してください。
(return status = 1)
1>
|
1> use TESTDB
2> go
1> sp_addsegment dat_seg,TESTDB,TEST_dat01
2> go
DBCC の実行が完了しました。DBCC
がエラー・メッセージを表示した場合、システム管理者 (SA)
の権限を持つユーザに連絡しください。
セグメントが作成されました。
(return status = 0)
1>
|
1> sp_addsegment idx_seg,TESTDB,TEST_idx01
2> go
DBCC の実行が完了しました。DBCC
がエラー・メッセージを表示した場合、システム管理者 (SA)
の権限を持つユーザに連絡しください。
セグメントが作成されました。
(return status = 0)
1>
|
- TEST_idx01デバイスから,defaultセグメントを削除する.
1> sp_dropsegment "default",TESTDB,TEST_idx01
2> go
DBCC の実行が完了しました。DBCC
がエラー・メッセージを表示した場合、システム管理者 (SA)
の権限を持つユーザに連絡しください。
デバイスを参照するセグメントは削除されました。
(return status = 0)
1>
|
- TEST_idx01デバイスから,systemセグメントを削除する.
1> sp_dropsegment system,TESTDB,TEST_idx01
2> go
DBCC の実行が完了しました。DBCC
がエラー・メッセージを表示した場合、システム管理者 (SA)
の権限を持つユーザに連絡しください。
デバイスを参照するセグメントは削除されました。
(return status = 0)
1>
|
5.ユーザとログインを作成する
1> sp_addlogin test,testpass,TESTDB,japanese
2> go
パスワードが変更されました。
アカウントはロックされませんでした。
新しいログインが作成されました。
(return status = 0)
1> sp_adduser test
2> go
新しいユーザが追加されました。
(return status = 0)
1>
|
1> sp_helpuser test
2> go
Users_name ID_in_db Group_name Login_name
----------------- ----------- ----------------- -----------------
test 3 public test
(return status = 0)
1> sp_displaylogin test
2> go
Suid: 3
ログイン名: test
フルネーム:
デフォルトのデータベース:TESTDB
デフォルトの言語:japanese
自動ログイン・スクリプト:
設定された権限:
ロック済み: いいえ
パスワードの最終変更日: Sep 22 2002 7:31PM
パスワード有効期間: 0
パスワード期限: NO
最小パスワード長: 6
最大失敗ログイン数: 0
現在の失敗ログイン試行数:
(return status = 0)
1>
|
6.作成したユーザとログインで接続してみる
bash-2.05$ isql -Utest -Ptestpass -Spoweredge -Jsjis -zjapanese
1> select db_name()
2> go
------------------------------
TESTDB
(1 row affected)
1>
|
|
|