Oracle创建一个新库要为它准备一个用户和表空间。
--查看表空间
select username,default_tablespace from dba_users;
步骤如下
1、创建新用户
create user 用户名 identified by 密码;
2、创建表空间
create tablespace 用户名 datafile '表空间文件位置/文件名.dbf' size 2096m;
3、给用户设置默认表空间
alert user 用户名 default tablespace 表空间;
4、给用户创建表,连接库的权限;赋予连接权限
grant create session,create table,unlimited 表空间to 用户名;
grant connect, resource to 用户名;
grant create session to 用户名;
修改用户密码:alter user XXX identified by ****; //将XXX用户的密码重置为***;
删除某用户:drop user user1 cascade;
备份数据库:exp 用户/密码@实例名 file=文件位置/文件名.dmp owner='用户名' //指定导出某个用户下的库
导入还原数据库:imp 用户/密码@实例名 full=y file= 文件位置.dmp ignore=y
整套还原代码实例:
--创建表空间
create tablespace user1 datafile 'D:\oradata\user1 'size 200m
AUTOEXTEND ON NEXT 50M MAXSIZE UNLIMITED LOGGING
EXTENT MANAGEMENT LOCAL AUTOALLOCATE
SEGMENT SPACE MANAGEMENT AUTO;
--修改表空间自动增长
alter database datafile 'D:\oradata\user1.ora' autoextend on next 10m;
--创建用户指定表空间
create user user1 identified by password
default tablespace user1
temporary tablespace TEMP ACCOUNT UNLOCK;
--给用户授予权限
grant connect,resource,dba to user1;
-- 赋予任何主机访问数据的权限
grant all privileges to user1;
commit;
--drop user user1 cascade; 删除原来的用户,如果没有,可忽略
--还原数据库
imp user1/password@orcl file=D:\databack\bak.dmp ignore=y
sql删除用户所有表数据:
select 'drop table ' || table_name ||';'||chr(13)||chr(10) from user_tables; --delete tables
select 'drop view ' || view_name||';'||chr(13)||chr(10) from user_views; --delete views