为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

oracle创建用户,分配权限以及建立变空间

2017-09-20 6页 doc 31KB 26阅读

用户头像

is_196623

暂无简介

举报
oracle创建用户,分配权限以及建立变空间一、创建表空间及用户并授权 1:创建临时表空间 create temporary tablespace user_temp  tempfile 'Q:\oracle\product\10.2.0\oradata\Test\xyrj_temp.dbf' size 50m  autoextend on  next 50m maxsize 20480m  extent management local;  2:创建数据表空间 create tablespace user_data  logging  datafile...
oracle创建用户,分配权限以及建立变空间
一、创建空间及用户并授权 1:创建临时表空间 create temporary tablespace user_temp  tempfile 'Q:\oracle\product\10.2.0\oradata\Test\xyrj_temp.dbf' size 50m  autoextend on  next 50m maxsize 20480m  extent management local;  2:创建数据表空间 create tablespace user_data  logging  datafile 'Q:\oracle\product\10.2.0\oradata\Test\xyrj_data.dbf' size 50m  autoextend on  next 50m maxsize 20480m  extent management local;  第3步:创建用户并指定表空间 create user username identified by password  default tablespace user_data  temporary tablespace user_temp;  第4步:给用户授予权限 grant connect,resource,dba to username; 第二部分:删除用户及表空间 //删除用户以及用户所有的对象 drop user zfmi cascade; //cascade参数是级联删除该用户所有对象,经常遇到如用户有对象而未加此参数则用户删不了的问题,所以习惯性的加此参数 //删除表空间 前提:删除表空间之前要确认该表空间没有被其他用户使用之后再做删除 drop tablespace zfmi including contents and datafiles cascade onstraints; //including contents 删除表空间中的内容,如果删除表空间之前表空间中有内容,而未加此参数,表空间删不掉,所以习惯性的加此参数 //including datafiles 删除表空间中的数据文件 //cascade constraints 同时删除tablespace中表的外键参照 二、oracle数据库的导入和导出 下面介绍的是导入导出的实例,向导入导出看实例基本上就可以完成,因为导入导出很简单。 数据导出:  1 将数据库TEST完全导出,用户名system 密码manager 导出到D:\daochu.dmp中    exp system/manager@TEST file=d:\daochu.dmp full=y  2 将数据库中system用户与sys用户的表导出    exp system/manager@TEST file=d:\daochu.dmp owner=(system,sys)  3 将数据库中的表table1 、table2导出    exp system/manager@TEST file=d:\daochu.dmp tables=(table1,table2)   4 将数据库中的表table1中的字段filed1以"00"打头的数据导出    exp system/manager@TEST file=d:\daochu.dmp tables=(table1) query=\" where filed1 like  '00%'\"         上面是常用的导出,对于压缩我不太在意,用winzip把dmp文件可以很好的压缩。                      不过在上面命令后面 加上 compress=y  就可以了 数据的导入  1 将D:\daochu.dmp 中的数据导入 TEST数据库中。    imp system/manager@TEST  file=d:\daochu.dmp    上面可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进行导入。    在后面加上 ignore=y 就可以了。  2 将d:\daochu.dmp中的表table1 导入  imp system/manager@TEST  file=d:\daochu.dmp  tables=(table1)     基本上上面的导入导出够用了。不少情况我是将表彻底删除,然后导入。   注意:  你要有足够的权限,权限不够它会提示你。  数据库时可以连上的。可以用tnsping TEST 来获得数据库TEST能否连上。   数据导出: exp hkb/hkb@boss_14 full=y file=c:\orabackup\hkbfull.dmp log=c:\orabackup\hkbfull.log; 导出:导出的是当前用户的的数据,当前用户如果有DBA的权限,则导出所有数据! 同名用户之间的数据导入: imp hkb/hkb@xe  file=c:\orabackup\hkbfull.dmp log=c:\orabackup\hkbimp.log full=y 不同名之间的数据导入: imp system/test@xe fromuser=hkb touser=hkb_new file=c:\orabackup\hkbfull.dmp log=c:\orabackup\hkbimp.log; 三、相关的更改语句(alter的用法) //0.重命名   //0.1 表:rename dept to dt;            rename dt to dept;   //0.2 列:alter table dept rename column loc to location;            alter table dept rename column location to loc; //1.添加约束   //1.1 primary key       alter table employee_info add constraint pk_emp_info primary key(empno);   //1.2 foreign key       alter table employee_info add constraint fk_emp_info foreign key(deptno)       references dept(deptno);   //1.3 check       alter table employee_info add constraint ck_emp_info check       (sex in ('F','M'));   //1.4 not null       alter table employee_info modify phone constraint not_null_emp_info not null;   //1.5 unique       alter table employee_info add constraint uq_emp_info unique(phone);   //1.6 default       alter table employee_info modify sex char(2) default 'M'; //2.添加列    alter table employee_info add id varchar2(18);    alter table employee_info add hiredate date default sysdate not null; //3.删除列    alter table employee_info drop column introduce; //3.修改列   //3.1 修改列的长度       alter table dept modify loc varchar2(50);   //3.2 修改列的精度       alter table employee_info modify empno number(2);   //3.3 修改列的数据类型       alter table employee_info modify sex char(2);   //3.4 修改默认值       alter table employee_info modify hiredate default sysdate+1; //4.禁用约束   alter table employee_info disable constraint uq_emp_info; //5.启用约束   alter table employee_info enable constraint uq_emp_info; //6.延迟约束   alter table employee_info drop constraint fk_emp_info;   alter table employee_info add constraint fk_emp_info foreign key(deptno)         references dept(deptno)   deferrable initially deferred; //7.向表中添加注释   comment on table employee_info is 'information of employees'; //8.向列添加注释   comment on column employee_info.ename is 'the name of employees';   comment on column dept.dname is 'the name of department'; //9.清除表中所有数据   truncate table employee_info; //10.删除表   drop table employee_info; //11修改session默认时间格式 alter session set nls_date_format ='yyyy-mm-dd';   alter session set nls_date_format = 'yyyy-mm-dd hh24:mi:ss';   //12修改用户密码 Alter user user_name identified by password. //13 修改最大连接数 第一步,在cmd命令行,输入sqlplus 第二步源码天空,根据提示输入用户名与密码 1. 查看processes和sessions参数   SQL> show parameter processes   NAME                                 TYPE        VALUE   db_writer_processes                 integer    1   gcs_server_processes                integer    0   job_queue_processes                 integer    10   log_archive_max_processes           integer    2   processes                           integer    50   SQL> show parameter sessions   NAME                                 TYPE        VALUE   license_max_sessions                integer    0   license_sessions_warning            integer    0   logmnr_max_persistent_sessions      integer    1   sessions                            integer    60   shared_server_sessions              integer   2. 修改processes和sessions值   SQL> alter system set processes=300 scope=spfile;   系统已更改。   SQL> alter system set sessions=335 scope=spfile;   系统已更改。   3. 修改processes和sessions值必须重启oracle服务器才能生效   ORACLE的连接数(sessions)与其参数文件中的进程数(process)有关,它们的关系如下:   sessions=(1.1*process+5)   摘(二)   查询数据库当前进程的连接数:   select count(*) from v$process;   查看数据库当前会话的连接数:   elect count(*) from v$session;   查看数据库的并发连接数:   select count(*) from v$session where status='ACTIVE';   查看当前数据库建立的会话情况:   select sid,serial#,username,program,machine,status from v$session;  查询数据库允许的最大连接数:   select value from v$parameter where name = 'processes';   或者:show parameter processes;   修改数据库允许的最大连接数:   alter system set processes = 300 scope = spfile;   (需要重启数据库才能实现连接数的修改)   重启数据库:   shutdown immediate;   startup;   查看当前有哪些用户正在使用数据:   select osuser,a.username,cpu_time/executions/1000000||'s',sql_fulltext,machine   from v$session a,v$sqlarea b   where a.sql_address = b.address   order by cpu_time/executions desc;   备注:UNIX 1个用户session对应一个操作系统process,而Windows体现在线程。   启动oracle   su - oracle   sqlplus system/pwd as sysdba  //进入sql   startup                                     //启动数据库   lsnrctl start                              //启动监听   sqlplus "/as sysdba"   shutdown immediate;   startup mount; alter database open; 三、如何查询数据库该用户下所有表及表中字段的备注名称 select table_name from user_tables; //当前用户拥有的表      select table_name from all_tables; //所有用户的表 select table_name from dba_tables; //包括系统表 select table_name from dba_tables where owner='用户名'; select * from user_tab_columns where Table_Name='用户表'; select * from all_tab_columns where Table_Name='用户表'; select * from dba_tab_columns where Table_Name='用户表'; select * from user_tab_comments;--获取表的注释 select * from user_col_comments;--获取字段的注释
/
本文档为【oracle创建用户,分配权限以及建立变空间】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索