Oracle用戶創建授權

系統默認用戶

用戶名 / 密碼 登錄身份 說明
sys/change_on_install SYSDBA 或 SYSOPER 不能以 NORMAL 登錄,可作爲默認的系統管理員
system/manager SYSDBA 或 NORMAL 不能以 SYSOPER 登錄,可作爲默認的系統管理員
sysman/oem_temp sysman 爲 oms 的用戶名
scott/tiger NORMAL 普通用戶
aqadm /aqadm SYSDBA 或 NORMAL 高級隊列管理員
Dbsnmp/dbsnmp SYSDBA 或 NORMAL 複製管理員

在安裝oracle的最後即將完成安裝的時候,需要解鎖賬戶,解鎖完就可以用該賬戶名和其默認密碼登陸了(前提是你在解鎖的時候沒有更改密碼,更改的 要用你更改後的密碼)。
如果在安裝時沒有解鎖賬戶可以登陸system管理員賬戶後 輸入命令 解鎖其內置的普通賬戶。

登陸

sqlplus / as sysdba;//登陸sys帳戶

sqlplus sys as sysdba;//同上

sqlplus scott/tiger;//登陸普通用戶scott

查看錶空間位置

select t1.name,t2.name from v$tablespace t1,v$datafile t2 where t1.ts# = t2.ts#;

如下面的D:\software\oracle11\11gR2\oradata\orcl\SMLQ.DBF就是先找到大概的位置,然後SMLQ.DBF就是自己起的名字。

創建表空間

create tablespace smlq 
 logging 
 datafile 'D:\software\oracle11\11gR2\oradata\orcl\SMLQ.DBF' size 50m
 autoextend on
 next 10m maxsize unlimited
 extent management local;

創建dblink

create database link ZBKPIDBLINK
  connect to zbkpi identified by zbsys2019
  using '(DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.235)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = DSS)
    )
)';

ZBKPIDBLINK : 表示dblink名字

zbkpi :表示 遠程數據庫的用戶

zbsys2019:表示 遠程數據庫的密碼

HOST : 表示遠程數據庫IP

PORT : 表示遠程數據庫端口

SERVICE_NAME : 遠程數據庫的實例名

創建用戶帳號:smlq 密碼 123456

create user smlq identified by 123456 
 default tablespace smlq
 temporary tablespace TEMP;

修改密碼

alter user smlq identified by 123456;

授權

grant XXX to user;,grant是授權的作用,這裏的XXX能夠是一個角色role,也能夠是權限。
權限能夠分爲兩類:

 grant dba to smlq;

系統權限:系統規定用戶使用數據庫的權限。(系統權限是對用戶而言)。

實體權限:某種權限用戶對其他用戶的表或視圖的存取權限。(是針對表或視圖而言的)。

系統權限

DBA:擁有所有特權,是系統最高權限,僅僅有DBA才幹夠創建數據庫結構。

RESOURCE:擁有Resource權限的用戶僅僅能夠創建實體,不能夠創建數據庫結構。

CONNECT:擁有Connect權限的用戶僅僅能夠登錄Oracle,不能夠創建實體,不能夠創建數據庫結構。

對於普通用戶:授予connect, resource權限。

對於DBA管理用戶:授予connect,resource, dba權限。

且系統權限僅僅能由DBA用戶授出:sys, system(最開始僅僅能是這兩個用戶)。普通用戶通過授權能夠具有與system同樣的用戶權限,

但永遠不能達到與sys用戶同樣的權限,system用戶的權限也能夠被回收。

grant connect,resource, exp_full_database,imp_full_database to smlq;
exp_full_database:導出其它用戶數據
imp_full_database:導入dmp文件的時候,需要授導入的權限
grant create session to smlq;//授予smlq用戶創建session的權限,即登陸權限

grant unlimited tablespace to smlq;//授予smlq用戶使用表空間的權限

grant create table to smlq;//授予創建表的權限

grante drop table to smlq;//授予刪除表的權限

grant insert table to smlq;//插入表的權限

grant update table to smlq;//修改表的權限

角色

角色即權限的集合,可以把一個角色授予給用戶

create role myrole;//創建角色

grant create session to myrole;//將創建session的權限授予myrole

grant myrole to smlq;//授予smlq用戶myrole的角色

drop role myrole;刪除角色

oracle服務名稱和sid區別

https://www.cnblogs.com/lixuwu/p/7127148.html

SID即INSTANCE_NAME是用來唯一標示實例的。SERVICE_NAME是oracle8i新引進的,8i之前,一個數據庫只能由一個實例對應,但是隨着高性能的需求,並行技術的使用,一個數據庫可以由多個實例對應了,比較典型的應用如RAC。爲了充分利用所有實例,並且令客戶端連接配置簡單,ORACLE提出了SERVICE_NAME的概念。該參數直接對應數據庫,而不是某個實例。

查看實例名(sid):

select INSTANCE_NAME from v$instance;

查看服務名:

select global_name from global_name;

JDBC連接ORACLE的方法由三種

格式一:jdbc:oracle:thin:@//<host>:<port>/<service_name>
格式二:jdbc:oracle:thin:@<host>:<port>:<SID> 
格式三:jdbc:oracle:thin:@<TNSName> 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章