1.首先我们可以用scott用户以sysdba的身份登录oracle.
conn scott/tiger as sysdba
2.然后我就可以来创建用户了.
create user zzg identified by zzg123;
-- 创建好用户我们接着就可以修改用户的密码.
alter user zzg identified by unis;
4.默认情况下用户创建好后系统会默认给该用户分配一个表空间(users);我们可以通过下面的sql语句来查看一下所有用户所在的表空间.
select username,default_tablespace from dba_users;
5.一般在开发情况下,我们当然不会使用用户的默认表空间,所以这时我们需要创建一个表空间.
在一句命令中执行完下面
create tablespace ts_zzg datafile 'f:\ts_zzg\zzg_data.dbf' size 200M
autoextend ON NEXT 50M maxsize 20000M; --表空间自动扩展大小
注:datafile后面是表空间的物理存储路径,文件名的后缀可以随便.
6.创建好表空间,还需要将表空间分配给用户.
alter user zzg default tablespace ts_zzg;
-- 修改表空间名称
SQL> alter tablespace ts_zzg rename to ts_zzg_newname;
7.我们可以通过步骤4来查询用户所在的表空间.
8.给用户分配了表空间,用户还不能登陆(没有登录权限),因此还需要为用户分配权限
grant create session,create table,create view,create sequence,unlimited tablespace to zzg;
9.给用户分配了权限之后我们就可以用zzg用户来登录了.
conn zzg/unis;
10.登录之后我们也可以来查询用户所具有的权限
select *from session_privs;
11.最后我们也可以删除用户及其相关对象
drop user zzg cascade;
解锁用户
ALTER USER username ACCOUNT UNLOCK;
```sql
修改表空间大小
```sql
ALTER DATABASE datafile 'D:\soft\product\11.2.0\dbhome_1\tablespace\BISPACE.DBF' autoextend ON NEXT 100M maxsize 32000M;
查看用户下各表占用表空间大小
Select Segment_Name,Sum(bytes)/1024/1024 total From User_Extents Group By Segment_Name order by total desc
imp bi/bi file="filePath/xxx.dmp" full=y
imp BI/BI file="E:\develop\BI_2017-12-07-00-05-01.dmp" full=y
--查询数据库servername
select value from v$parameter where name = 'service_names';
show parameter service_name
--查询数据库域名
select value from v$parameter where name = 'db_domain';
show parameter domain
--导入dmp
imp bi/bi file="F:\oracle_2017-11-28-00-05-01\work\platform\bak\oracle\BI_2017-11-28-00-05-01.dmp" full=y
imp sjgl_dsfcj/tiger file="F:\oracle_2017-11-28-00-05-01\work\platform\bak\oracle\SJGL_DSFCJ_2017-11-28-00-05-01.dmp" full=y
imp bi/bi file="F:\oracle_2017-11-28-00-05-01\work\platform\bak\oracle\BI_2017-11-28-00-05-01.dmp" full=y
--导出dmp
exp file=d:\daochu.dmp tables=(act%)
--恢复数据
1、获得当前数据库的scn号
select current_scn from v$database; (切换到sys用户或system用户查询)
2、查询当前scn号之前的scn
select * from 表名 as of scn 1499220; (确定删除的数据是否存在,如果存在,则恢复数据;如果不是,则继续缩小scn号)
3、恢复删除且已提交的数据
flashback table 表名 to scn 1499220;
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;
select * from 表名 as of timestamp to_timestamp('2013-05-29 15:29:00','yyyy-mm-dd hh24:mi:ss'); (如果不是,则继续缩小范围)
flashback table 表名 to timestamp to_timestamp('2013-05-29 15:29:00','yyyy-mm-dd hh24:mi:ss');