系統默認用戶
用戶名 / 密碼 | 登錄身份 | 說明 |
---|---|---|
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>