達夢6.0試用之測試環境搭建

yangtingkun發表於2010-07-16

前幾天ITPUB的熊建國主編和我聯絡,希望我能參加國產資料庫達夢的適用活動,並寫幾篇使用感受。本來最近手工的事情比較多,本打算推辭的,不過熊主編再三邀請,而且強調並非是槍手文,只要寫出真實使用感受即可。既然如此,我就本著支援國產資料庫的原則,寫幾篇試用感受。

由於本人唯一熟悉的資料庫就是Oracle,因此所有的對比都是與Oracle資料庫進行對比,在這個過程中,將盡可能避免將對Oracle資料庫的喜愛之情帶進來,爭取站在一個比較公正的位置上來進行評價。

這一篇簡單介紹連線登陸達夢資料庫並建立測試環境的步驟。

 

 

在安裝完成之後,資料庫自動啟動,因此啟動資料庫的環境暫時用不到了。安裝過程中建立了兩個資料庫(這裡資料庫的概念型別SYBASESQLSERVER中的概念,而不是Oracle中資料庫的概念),不過一個是系統資料庫,另一個是示例資料庫,都不適合我進行自己的測試,在簡單看了幾眼文件後,準備登陸達夢,建立測試資料庫環境,同時也是第一次體驗達夢資料庫:

C:\Documents and Settings\ytk>cd c:\dmdbms\bin

C:\dmdbms\bin>isql
isql V6.0.2.51-Build(2009.12.23)
SQL>login
server name:localhost
user name:sysdba
password:
port:12345
dm_login time used:48.136(ms)
SQL>create database test datafile 'e:\dmdbms\data\test.dbf' size 100;
create database test datafile 'e:\dmdbms\data\test.dbf' size 100;

time used: 29780.352(ms) clock tick:1476710890.
SQL>set current database test;
set current database test
設定當前資料庫為 'test'
time used: 0.321(ms) clock tick:528560.

由於使用Oracle的時候就習慣命令列方式,因此登陸達夢資料庫,也選擇了對應的命令列工具isql

登陸的時候碰到了一點障礙,不知道server name是什麼,無奈透過啟動圖形介面後,根據裡面的顯示的資訊進行嘗試,才發現居然是localhost,而且這個server name並不記得在安裝過程中進行過設定啊。

同樣的問題也發生在埠號上,不過圖形介面中明確的顯示了12345這個埠號,這個埠號倒是比較好記。

雖然根據文件中記載的語法,建立了一個測試資料庫,並設定當前資料庫為TEST

SQL>create login test identified by "testtest"
2   default database test
3   role sys_admin;
create login test identified by "testtest"
default database test
role sys_admin;

time used: 1251.775(ms) clock tick:1025410930.
SQL>create user test related by test;
create user test related by test;

time used: 23.721(ms) clock tick:39385280.

下面建立了登陸和使用者,並將二者關聯起來。在Oracle中,沒有登陸這個物件,都是透過USER進行登陸,不知道達夢資料庫為什麼要將這二者分開,不知道SYBASESQLSERVER資料庫中是否也是這樣實現的。

SQL>create schema test authorization test;
create schema test authorization test;


time used: 0.373(ms) clock tick:611290.

在達夢資料庫中,也有SCHEMA的概念,這倒是和Oracle有一點類似之處,不過對於Oracle而言,只建立使用者而沒有什麼使用者的物件存在的話,SCHEMA也是不存在的。而達夢資料庫中SCHEMA是可以明確建立的,而且使用者還可以建立多個SCHEMA,使用者和SCHEMA是一對多的關係。

SQL>login
server name:localhost
user name:test
password:
port:12345
dm_login time used:76.352(ms)

檢查利用剛才建立的LOGIN能否正常登陸。

最後建立一個測試表:

SQL>create table t
2   (id number,
3   name varchar(30),
4   create_date date);
create table t
(id number,
name varchar(30),
create_date date);

沒有建立表許可權.error code = -1915
SQL>login
server name:localhost
user name:sysdba
password:
port:12345
dm_login time used:52.751(ms)
SQL>set current database test;
set current database test
設定當前資料庫為 'test'
time used: 0.245(ms) clock tick:400320.
SQL>grant dba to test;
grant dba to test;

time used: 14.712(ms) clock tick:24312810.

建表失敗後發現沒有許可權,利用SYSDBATEST使用者授予DBA許可權。

SQL>login
server name:localhost
user name:test
password:
port:12345
dm_login time used:58.316(ms)
SQL>create table t
2   (id number,
3   name varchar(30),
4   create_date date);
create table t
(id number,
name varchar(30),
create_date date);

time used: 1.242(ms) clock tick:1814140.

利用TEST使用者重新登陸後,成功的建立了測試用表。

雖然我對於SQLSERVERSYBASE這種多資料庫架構的資料庫系統不是很熟悉,不過在隨機文件的幫助下,還是可以很快的建立起測試環境,總的來說,在易用性方面做的還不錯,包括一些錯誤資訊都比較明確。

 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4227/viewspace-668243/,如需轉載,請註明出處,否則將追究法律責任。

相關文章