當前位置:首頁 » 數據倉庫 » oracle資料庫實例用戶名
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

oracle資料庫實例用戶名

發布時間: 2023-06-07 21:33:20

⑴ oracle資料庫實例名怎麼查看

實例名,也就是當前資料庫的實例名
那麼v$instance視圖中的instance_name就是當前實例的實例名
其實還有其他方式,比如在系統層面查詢實例名的方式(linux的用戶參數也可以),但是因為可能同時啟動兩個資料庫實例,而你當前的資料庫,可能並不是系統層面顯示的實例名,所以這種方式還是不那麼靠譜的。所以instance個人認為是最好的方式。

⑵ oracle資料庫與用戶名之間是什麼關系比如建了一個orcl資料庫,為什麼會有很多用戶 system,sys

沒絕對關系。

user即Oracle中的用戶,和所有系統的中用戶概念類似,用戶所持有的是系統的許可權及資源;而schema所涵蓋的是各種對象,它包含了表、函數、包等等對象的「所在地」,並不包括對他們的許可權控制。好比一個房子,裡面放滿了傢具,對這些傢具有支配權的是房子的主人(user),而不是房子
(schema)。你可以也是一個房子的主人(user),擁有自己的房子(schema).可以通過altersession的方式進入別人的房子。如果你沒有特別指定的話,你所做的操作都是針對你當前所在房子中的東西。至於你是否有許可權使用(select)、搬動(update)或者拿走(delete)這些傢具就看這個房子的主人有沒有給你這樣的許可權了,或者你是整個大廈(DB)的老大(DBA)。

altersessionsetschema可以用來代替synonyms。如果你想調用其他schema的對象(有許可權的前提下),但並沒有建synonym,同時又不想把其他schema名字放入代碼中,就可以首先使用altersessionsetschema=<其他schema名字>。

自己練習幾次,就可以清晰認識了。

⑶ Oracle資料庫的實例名指的是用戶名還是資料庫名

資料庫名。
實例實際上你可以理解為,按照oracle規則,建立的一個資料庫,專門給你用的哦。
祝好運,望採納。

⑷ oracle資料庫實例名如何修改

1. 准備

原資料庫的實例名為linuxdb,控制文件、數據文件、聯機日誌文件存放在/home/oracle/ora9/oradata/linuxdb目錄,將所有的文件拷貝到另外一個目錄/home/oracle/ora9/oradata/dbtest。
再將linuxdb 的初始化文件也復制一份出來,執行如下的sql
Create pfile='/home/oracle/ora9/oracle/dbs/pfiledbtest.ora' from spfile='/home/oracle/ora9/oracle/dbs/spfilelinuxdb.ora';
我們將修改實例名為dbtest。
下面我們開始一步一步地進行處理。

2. 載入初始化文件

打開pfiledbtest.ora文件,修改對應的mp屬性的路徑名,實例名字,控制文件路徑等。

然後執行如下命令:

[oracle@localhost oracle]$ export ORACLE_SID=dbtest

[oracle@localhost oracle]$ sqlplus "/ as sysdba"

SQL*Plus: Release 9.2.0.4.0 - Proction on Mon Aug 17 16:57:36 2009

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

Connected to an idle instance.

SQL> startup pfile='/home/oracle/ora9/oracle/dbs/pfiledbtest.ora' nomount

ORACLE instance started.

Total System Global Area 236000356 bytes

Fixed Size 451684 bytes

Variable Size 201326592 bytes

Database Buffers 33554432 bytes

Redo Buffers 667648 bytes

SQL>

這樣載入初始化文件就成功了。

下面接著進行,載入控制文件。

3. 載入控制文件

先執行如下命令。

SQL> alter database mount;

alter database mount

*

ERROR at line 1:

ORA-00205: error in identifying controlfile, check alert log for more info

好像是控制文件的路徑不對,修改初始文件再次載入。

SQL> alter database mount;

alter database mount

*

ERROR at line 1:

ORA-01103: database name 'LINUXDB' in controlfile is not 'DBTEST'

根據錯誤信息提示,是實例名字不一致,但是控制文件是二進制的,用vi打開之後沒法編輯,只能通過用重建控制文件可以解決。

在/home/oracle/ora9/oradata/dbtest目錄下刪除老的三個控制文件。然後開始重建控制文件。

SQL> CREATE CONTROLFILE SET DATABASE "DBTEST" RESETLOGS FORCE LOGGING NOARCHIVELOG

2 MAXLOGFILES 16

3 MAXLOGMEMBERS 3

4 MAXDATAFILES 100

5 MAXINSTANCES 8

6 MAXLOGHISTORY 292

7 LOGFILE

8 GROUP 1 '/home/oracle/ora9/oradata/dbtest/redo01.log' SIZE 50M,

9 GROUP 2 '/home/oracle/ora9/oradata/dbtest/redo02.log' SIZE 50M,

10 GROUP 3 '/home/oracle/ora9/oradata/dbtest/redo03.log' SIZE 50M

11 DATAFILE

12 '/home/oracle/ora9/oradata/dbtest/cwmlite01.dbf',

13 '/home/oracle/ora9/oradata/dbtest/devbase_20090408.dbf',

14 '/home/oracle/ora9/oradata/dbtest/drsys01.dbf',

15 '/home/oracle/ora9/oradata/dbtest/example01.dbf',

16 '/home/oracle/ora9/oradata/dbtest/indx01.dbf',

17 '/home/oracle/ora9/oradata/dbtest/odm01.dbf',

18 '/home/oracle/ora9/oradata/dbtest/system01.dbf',

19 '/home/oracle/ora9/oradata/dbtest/tools01.dbf',

20 '/home/oracle/ora9/oradata/dbtest/undotbs01.dbf',

21 '/home/oracle/ora9/oradata/dbtest/users01.dbf',

22 '/home/oracle/ora9/oradata/dbtest/xdb01.dbf'

23 CHARACTER SET ZHS16GBK;

CREATE CONTROLFILE SET DATABASE "DBTEST" RESETLOGS FORCE LOGGING NOARCHIVELOG

*

ERROR at line 1:

ORA-01503: CREATE CONTROLFILE failed

ORA-01990: error opening password file '/home/oracle/ora9/oracle/dbs/orapw'

ORA-27037: unable to obtain file status

Linux Error: 2: No such file or directory

Additional information: 3

根據錯誤提示,是缺少密碼驗證文件,用下面的命令創建密碼文件。

$cd $ORACLE_HOME/dbs

orapwd password=chenli file=orapwdbtest

SQL> CREATE CONTROLFILE SET DATABASE 'dbtest' RESETLOGS FORCE LOGGING NOARCHIVELOG

2 MAXLOGFILES 16

3 MAXLOGMEMBERS 3

4 MAXDATAFILES 100

5 MAXINSTANCES 8

6 MAXLOGHISTORY 292

7 LOGFILE

8 GROUP 1 '/home/oracle/ora9/oradata/dbtest/redo01.log' SIZE 50M,

9 GROUP 2 '/home/oracle/ora9/oradata/dbtest/redo02.log' SIZE 50M,

10 GROUP 3 '/home/oracle/ora9/oradata/dbtest/redo03.log' SIZE 50M

11 DATAFILE

12 '/home/oracle/ora9/oradata/dbtest/cwmlite01.dbf',

13 '/home/oracle/ora9/oradata/dbtest/devbase_20090408.dbf',

14 '/home/oracle/ora9/oradata/dbtest/drsys01.dbf',

15 '/home/oracle/ora9/oradata/dbtest/example01.dbf',

16 '/home/oracle/ora9/oradata/dbtest/indx01.dbf',

17 '/home/oracle/ora9/oradata/dbtest/odm01.dbf',

18 '/home/oracle/ora9/oradata/dbtest/system01.dbf',

19 '/home/oracle/ora9/oradata/dbtest/tools01.dbf',

20 '/home/oracle/ora9/oradata/dbtest/undotbs01.dbf',

21 '/home/oracle/ora9/oradata/dbtest/users01.dbf',

22 '/home/oracle/ora9/oradata/dbtest/xdb01.dbf'

23 CHARACTER SET ZHS16GBK;

Control file created.

現在創建成功了。

創建控制文件成功了,下面重新啟動資料庫。

SQL> startup nomount

ORACLE instance started.

Total System Global Area 236000356 bytes

Fixed Size 451684 bytes

Variable Size 201326592 bytes

Database Buffers 33554432 bytes

Redo Buffers 667648 bytes

SQL> alter database mount;

Database altered.

SQL> alter database open;

alter database open

*

ERROR at line 1:

ORA-01589: must use RESETLOGS or NORESETLOGS option for database open

SQL> alter database open RESETLOGS;

Database altered.

查看錶中的記錄,正確的。

修改實例名成功。

4. 總結

由上面的操作可以看到,在資料庫維護中,最重要的是數據文件,初始化文件可以從別的實例拷貝過來,然後修改。控制文件可以重新創建,只要數據文件正確,就可以重建初始化文件和控制文件之後,恢復資料庫。

遇到的錯誤:

ERROR at line 1:
ORA-01503: CREATE CONTROLFILE failed
ORA-00200: controlfile could not be created
ORA-00202: controlfile: '/home/ora/ora9/oradata/dbtest/control01.ctl'
ORA-27040: skgfrcre: create error, unable to create file
Linux Error: 2: No such file or directory

請查看初始化文件中,控制文件的路徑是正確,控制文件的路徑上的目錄是否有許可權創建文件,如果這些問題都解決了,那麼應該能成功創建控制文件。

⑸ oracle資料庫裡面用戶名和資料庫是否一樣

資料庫名默認orcl,也可以查詢試試,select
name
from
v$database;
還有就是你問的問題有點問題,你應該以前用的是sqlserver資料庫,oracle資料庫許可權控制是用戶區別的,資料庫就一個實例名orcl,然後下面有可以建立不同的用戶,這些用戶就像sqlserver裡面的資料庫一樣!然後可以給這些用戶分配不同的許可權!所以,你問用戶system用戶的默認資料庫是什麼名字?oracle下面的用戶所有的默認資料庫名都是一樣的!只要概念和sqlserver分開你就懂了!