欢迎光临
我们一直在努力

Oracle数据库常用操作sql语句

1.–建立表空间
create tablespace cmdb_db datafile ‘\home\cmdb_11.dbf’ size 100m autoextend on next 50m extent management local;
2.–建用户
create user cmdb_1023 identified by admin default tablespace cmdb_db;
3.–给权限
grant connect,resource,dba to cmdb_db;
4.–导入数据(在命令窗口执行)
imp cmdb/admin file=/home/cmdb_henan.dmp fromuser=cmdb_L touser=cmdb;
5.–导出数据
exp cmdn/admin owner=cmdb file=/u01/app/oracle/cmdb_heinan.dmp;
6.–删除表空间
drop tablespace CMDB_db including contents and datafiles;
7.–查看表空间与文件路径
select tablespace_name,file_id,bytes/1024/1024,file_name from dba_data_files order by file_id;
8.–删除用户并删除用户下所有数据
drop user cmdb_perftests cascade;

    • 删除过程中可能遇到报错:cannot drop a user that is currently connected 提示有人连接用户,不能够删除!此时请使用以下语句,删除连接再删用户。

    • select sid,serial# from v$session where username=’CMDB_HLJ’;   查询CMDB_HLJ这个数据库正在连接的SID,SERIAL#

    • alter system kill session ‘54,5’;   杀死连接’SID,SERIAL’

    • alter system kill session ’98,select * from sys.dba_tablespaces;23′; 杀死连接’SID,SERIAL’

    • alter system kill session ‘137,3’; 杀死连接’SID,SERIAL’

    • DROP USER CMDB_HLJ cascade; 删除用户

9.–查看表空间名称
select * from sys.dba_tablespaces;
10.–导出数据库,空表未导出问题(第一次导出时执行)
select ‘alter table ‘||table_name||’ allocate extent;’ from user_tables where num_rows=0;
复制此语句的执行结果,删除所有不是alter table 开头的语句,再次执行复制的语句。
《注:连接用户为当前要执行的用户》


Orcale数据库与监听启动与停止操作

   (1) 以oracle身份登录数据库,命令:su – oracle
   (2) 进入Sqlplus控制台,命令:sqlplus /nolog
   (3) 以系统管理员登录,命令:connect / as sysdba
   (4) 启动数据库,命令:startup
   (5) 如果是关闭数据库,命令:shutdown immediate
   (6) 退出sqlplus控制台,命令:exit
   (7) 进入监听器控制台,命令:lsnrctl
   (8) 启动监听器,命令:start
   (9) 退出监听器控制台,命令:exit
   (10) 重启数据库结束

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。