oracle 11g常用命令

1.监听
启动监听
lsnrctl start
停止监听 
lsnrctl stop 
查看监听状态 
lsnrctl status 

2.启动
用oracle用户进入
su - oracle
运行sqlplus命令,进入sqlplus环境,nolog参数表示不登录;
sqlplus /nolog
以管理员模式进入
conn /as sysdba
启动数据库
startup;
停止数据库
SHUTDOWN IMMEDIATE

远程连接数据库
sqlplus /nolog
conn sys/sys@IP:1521/orainstance as sysdba

也可以直接运行:
dbstart //启动数据库脚本 
dbshut //停止数据库脚本 


参考:
STARTUP [FORCE][RESTRICT][NOMOUNT][MIGRATE][QUIET]
[PFILE=<file_name>]
[MOUNT [EXCLUSIVE] <database_name>x |
OPEN <READ {ONLY | WRITE [RECOVER]} | RECOVER>
<database_name>]

SHUTDOWN <NORMAL|ABORT | IMMEDIATE | TRANSACTIONAL[LOCAL]>

3.用户管理
创建用户
create user "username" identified by "userpassword" ;
注:后面可带表空间
删除用户
drop user “username” cascade;
注:cascade 参数是级联删除该用户所有对象,经常遇到如用户有对象而未加此参数则用户删不了的问题,所以习惯性的加此参数 
授权
grant connect,resource,dba to "username" ;
查看当前用户的角色
select * from user_role_privs;
select * from session_privs; 
查看当前用户的系统权限和表级权限
select * from user_sys_privs;
select * from user_tab_privs;
查询用户表
select username from dba_users; 
修改用户口令
alter user "username" identified by "password"; 
显示当前用户
show user;


4.表及表空间
创建表空间
CREATE TABLESPACE data01 DATAFILE '/oracle/oradata/db/DATA01.dbf' SIZE 500M;
删除表空间
DROP TABLESPACE data01 INCLUDING CONTENTS AND DATAFILES;
修改表空间大小
alter database datafile '/path/NADDate05.dbf' resize 100M;
增加表空间 
ALTER TABLESPACE NEWCCS ADD DATAFILE '/u03/oradata/newccs/newccs04.dbf' SIZE 4896M; 
查询数据库文件
select * from dba_data_files; 
查询当前存在的表空间
select * from v$tablespace;
表空间情况
select tablespace_name,sum(bytes)/1024/1024 from dba_data_files group by tablespace_name;
查询表空间剩余空间
select tablespace_name,sum(bytes)/1024/1024 from dba_free_space group by tablespace_name;
查看表结构
desc table;

修改连接数:要重启数据库
alter system set processes=1000 scope=spfile;
shutdown immediate;
startup;
查看用户当前连接数
select count(*) from sys.v_$session;

PL/SQL

[DECLARE
/*申明部分,一般是变量及常量*/]
[ BEGIN
/*执行部分,流程结构控制,SQL部分*/]
[EXCEPTION
/*异常处理部分*/]
END


SET SERVEROUTPUT ON //打开输出开关
BEGIN
DBMS_OUTPUT.PUT_LINE('Hello world!'); //输出结果
END;

5 EM

使用OTK工具安装的Oracle默认没有配置EM,下面记录下配置和启动过程!

 

首先创建EM,执行下面的命令

 

$ emca -config dbcontrol db -repos recreate

我第一次运行报如下错误:

 

Mar 31, 2012 4:16:06 PM oracle.sysman.emcp.EMReposConfig createRepository

CONFIG: ORA-00604: error occurred at recursive SQL level 1

ORA-01653: unable to extend table SYS.SOURCE$ by 128 in tablespace SYSTEM

oracle.sysman.assistants.util.sqlEngine.SQLFatalErrorException: ORA-00604: error occurred at recursive SQL level 1  www.2cto.com  

ORA-01653: unable to extend table SYS.SOURCE$ by 128 in tablespace SYSTEM

        at oracle.sysman.assistants.util.sqlEngine.SQLEngine.executeImpl(SQLEngine.java:1650)

        at oracle.sysman.assistants.util.sqlEngine.SQLEngine.executeScript(SQLEngine.java:1000)

        at oracle.sysman.assistants.util.sqlEngine.SQLPlusEngine.executeScript(SQLPlusEngine.java:339)

        at oracle.sysman.assistants.util.sqlEngine.SQLPlusEngine.executeScript(SQLPlusEngine.java:380)

        at oracle.sysman.emcp.EMReposConfig.createRepository(EMReposConfig.java:510)

        at oracle.sysman.emcp.EMReposConfig.invoke(EMReposConfig.java:228)

        at oracle.sysman.emcp.EMReposConfig.invoke(EMReposConfig.java:157)

        at oracle.sysman.emcp.EMConfig.perform(EMConfig.java:253)

        at oracle.sysman.emcp.EMConfigAssistant.invokeEMCA(EMConfigAssistant.java:589)

        at oracle.sysman.emcp.EMConfigAssistant.performConfiguration(EMConfigAssistant.java:1448)

        at oracle.sysman.emcp.EMConfigAssistant.statusMain(EMConfigAssistant.java:573)

        at oracle.sysman.emcp.EMConfigAssistant.main(EMConfigAssistant.java:521)

Mar 31, 2012 4:16:06 PM oracle.sysman.emcp.EMReposConfig invoke

SEVERE: Error creating the repository  www.2cto.com  

 

解决办法

 

使用SYS用户登录sqlplus,然后执行下面的语句:

 

 SQL> SELECT * FROM DBA_DATA_FILES where TABLESPACE_NAME = 'SYSTEM'; 

FILE_NAME     FILE_ID TABLESPACE_NAME                    

 BYTES     BLOCKS STATUS  RELATIVE_FNO AUT   MAXBYTES  MAXBLOCKS INCREMENT_BY USER_BYTES USER_BLOCKS  

ONLINE_  /data01/rdbms/wcdb/datafile/wcdb_system_01.dbf          1 SYSTEM                          536870912      65536 AVAILABLE           

 1 NO           0          0            0  535822336       65408 

SYSTEM

然后新定义个空间文件wcdb_system_02.dbf,注意不要重名

 

然后新定义个空间文件*wcdb_system_02.dbf*,注意不要重名

 

SQL> ALTER TABLESPACE SYSTEM ADD DATAFILE '/data01/rdbms/wcdb/datafile/wcdb_system_02.dbf' SIZE 500M; Tablespace altered.

然后再次执行EM创建成功!

 

EM的访问地址:https://localhost:1158/em

 

删除一个EM资料库

 

$ emca -repos drop

配置数据库的 Database Control

 

$ emca -config dbcontrol db

删除数据库的 Database Control配置

 

$ emca -deconfig dbcontrol db

重新配置db control的端口,默认端口在1158

 

$ emca -reconfig ports $ emca -reconfig ports -dbcontrol_http_port 1160 $ emca -reconfig ports -agent_port 3940  www.2cto.com  

先设置ORACLE_SID环境变量后,启动EM console服务

 

$ emctl start dbconsole

先设置 ORACLE_SID环境变量后,停止EM console服务

 

$ emctl stop dbconsole

先设置ORACLE_SID环境变量后,查看EM console服务的状态

 

$ emctl status dbconsole

 

linux Oracle11G 归档模式

su - oracle
sqlplus /nolog
SQL> conn / as sysdba
SQL> --查看是否归档模式
SQL> archive log list;
Database log mode              Archive Mode
Automatic archival             Enabled
...
SQL> --关闭归档模式
SQL> alter system set log_archive_start=false scope=spfile;  #禁用自动归档
SQL> shutdown immediate;
SQL> startup mount; #数据库启动到mount,打开控制文件
SQL> alter database noarchivelog; #将数据库改为非归档模式
SQL> alter database open;  #打开数据文件
SQL> archive log list;  #查看当前归档模式


你可能感兴趣的:(oracle 11g常用命令)