导出文件
exp 用户名/密码@远程oralce数据库的IP:端口号/实例 file=存放位置:\文件名.dmp full = y。
expdp user/pwd@orcl directory=dd network_link=dblink dumpfile=fileName.dmp
//user为本地用户名
//network_link为dblink
//directory目录建在本地
impdp user/pwd@orcl directory=dd dumpfile=fileName.dmp
创建实例
https://blog.csdn.net/nullsheep/article/details/106568530
查看数据库名
SQL> select name from v$database;
1.用有dba权限的用户登录:sys用户
2.创建一个新用户:create user 用户名 identified by 密码;
3.授予DBA权限: grant connect,resource,dba to 用户名;
//4. revoke connect, resource from 用户名;
授权角色
oracle为兼容以前版本,提供三种标准角色(role):connect/resource和dba.
(1)讲解三种标准角色:
1》. connect role(连接角色)
--临时用户,特指不需要建表的用户,通常只赋予他们connect role.
--connect是使用oracle简单权限,这种权限只对其他用户的表有访问权限,包括select/insert/update和delete等。
--拥有connect role 的用户还能够创建表、视图、序列(sequence)、簇(cluster)、同义词(synonym)、回话(session)和其他 数据的链(link)
2》. resource role(资源角色)
--更可靠和正式的数据库用户可以授予resource role。
--resource提供给用户另外的权限以创建他们自己的表、序列、过程(procedure)、触发器(trigger)、索引(index)和簇(cluster)。
3》. dba role(数据库管理员角色)
--dba role拥有所有的系统权限
--包括无限制的空间限额和给其他用户授予各种权限的能力。system由dba用户拥有
ok,创建好了,就可以用abc这个用户登录了,abc用户拥有dba权限。
select * from dba_users; 查看数据库里面所有用户,前提是你是有dba权限的帐号,如sys,system
select * from all_users; 查看你能管理的所有用户!
select * from user_users; 查看当前用户信息 !
创建表空间:
create tablespace tablespacename logging datafile 'd:\data.dbf' size xxxm;
create smallfile tablespace jfjz logging datafile 'D:\oracle\product\10.2.0\oradata\ORCL\jfjz.dbf' size 1024m autoextend on next 50m maxsize unlimited extent management local segment space management auto;
将空间分配给用户:
alter user username default tablespace tablespacename;
每步执行的sql:(sjzx是数据库名、用户名、密码、表空间名)
(1)create user sjzx identified by sjzx
(2)create tablespace sjzx datafile 'D:\db\app\oradata\orcl\sjzx.dbf'
size 100m
autoextend on next 32m maxsize 2048m
(3)alter user sjzx default tablespace sjzx
(4)grant create session,create table,unlimited tablespace to sjzx
(5)表空间删语法:DROP TABLESPACE TS_XIMING_DATA;
建立dblink
create database link jscptlink
connect to jscpt identified by jscpt123
using '(DESCRIPTION =(ADDRESS_LIST =(ADDRESS =(PROTOCOL = TCP)(HOST = 192.168.10.220)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = ke)))';
设置表空间
create smallfile tablespace jscpt logging datafile 'D:\oracle\product\10.2.0\oradata\ORCL\jscpt.dbf' size 1024m autoextend on next 50m maxsize unlimited extent management local segment space management auto;
以表空间TBS_DATA为例
方法一:
1)查看表空间是否自动扩容:select tablespace_name,file_name,autoextensible from dba_data_files (yes表示自动扩容)
2)alter database datafile 'H:\MIMIMIMIMIMI\ORADATA\ECMSORCL\TBS_DATA.DBF'(file_name,即路径) autoextend on;
方法二:
1)查看表空间名称和大小:select file_name,round(bytes/(1024*1024),0) from dba_data_files where tablespace_name = 'TBS_DATA'
2)增加表空间物理文件:alter tablespace TBS_DATA add datafile 'H:\MIMIMIMIMIMI\ORADATA\ECMSORCL\TBS_DATA01.DBF'(file_name,即路径,增加的文件为TBS_DATA01) size 3000(有强迫症的我,物理文件空间大小会保持一致) M
恢复误删的数据库表
select object_name from user_recyclebin t where t.TYPE='TABLE';
flashback Table
"BIN$qLJh+2D1Twm0g9f7j118qg==$0"
to before drop
https://www.cnblogs.com/zyzdisciple/p/7873584.html 查询tree
--11g 空表处理
select 'alter table '||table_name||' allocate extent(size 64k);' sql_text,table_name,tablespace_name
from user_tables
where table_name not in
(select segment_name from user_segments where segment_type = 'TABLE');
--删除用户
语法:drop user 用户名;
## 删除重复数据
select count(distinct(gid)),count(gid) from JSCPT_LXFSXX
delete from JSCPT_LXFSXX t1
where (t1.gid) in (select gid from JSCPT_LXFSXX group by gid having count(*) > 1)
and t1.rowid in (select min(rowid) from JSCPT_LXFSXX group by gid having count(*) > 1);