Oracle 重置密碼及基本操作

wozaizhe.55發表於2020-11-15

背景

自己平時做專案一直用的 MySQL, 非常簡單方便。公司開發用的是 Oracle,雖然有開發專用的 Oracle 資料庫,公共庫不夠方便,因此打算在本機裝一個 Oracle ,這裡選擇的是11g。

Oracle 的安裝教程就不贅述了,互聯上有很多這類資料,簡單介紹一下忘記密碼的解決辦法,以及最基本的使用方法。

重置登入密碼

前段時間安裝了 Oracle,但是最近密碼給忘了,非常尷尬。查詢相關資料,也找到一些解決辦法,這裡將最簡單的方法介紹給大家,自己也順帶記錄一下。以 Windows 版本為例:

# 用管理員身份執行控制檯
sqlplus /nolog;
connect / as sysdba;
alter user sys identified by newpassword;
alter user system identified by newpassword;
# 以上命令重置了 sys 和 system 兩個賬戶的密碼
# 之後便可以用 system 登入 oracle 進行一系列操作

Oracle 基本概念

Oracle 不同於 MySQL ,裡邊沒有資料庫的概念,Oracle 中一系列表的集合叫做表空間,然後將使用者與表空間進行繫結,這樣便可以根據登入使用者的不同展示不同的表空間。

建立表空間

/*
oracl 建立表空間時需要指定儲存位置,表空間大小的設定策略
*/
create tablespace oracle_test
datefile 'D:\oracleDatabace\'
size 100M
autoextend on next 16M maxsize unlimited;
/*
建立一個 oracle_test 的表空間儲存在 D:\oracleDatabace\,
初始大小為 100M, 存滿之後每次擴充 16M, 上限無限制
*/

建立使用者

create user test
identified by test
default tablespace oracle_test;
/*
建立一個 test 使用者,密碼為 test,預設表空間為 oracle_test,
此時使用者時無法登入的,需要進行授權操作
*/

授權

系統內建角色有三種:

  1. connect 臨時使用者
  2. resource 更為可靠的和正式使用者
  3. dba 資料庫管理員角色,擁有管理資料庫的最高許可權
/*
為 test 使用者授予 resource 許可權
*/
grant resource to test;

之後便能用 test 使用者登入資料庫了。

參考

相關文章