启动数据库
-
startup;
停止数据库
-
SHUTDOWN
IMMEDIATE
远程连接数据库
-
sqlplus
/nolog -
conn
sys/sys@IP:1521/orainstance as sysdba
也可以直接运行:
-
dbstart
//启动数据库脚本 -
dbshut
//停止数据库脚本 -
-
参考:
-
STARTUP [FORCE][RESTRICT][NOMOUNT][MIGRATE][QUIET] -
[PFILE=] -
[MOUNT [EXCLUSIVE] x | -
OPEN -
] -
-
SHUTDOWN
3.用户管理
创建用户
-
create
user "username" identified by "userpassword" ; -- 引号不需要的。default tablespace 'myspace'
create
一般先创建表空间,在创建用户,创建用户时默认表空间选用刚创建的表空间。
创建序列(需要当前用户具备创建序列的权限:grant
SQL>
序列已创建。
查看序列:select
查看当前序列:select
引入外部脚本文件并执行:
SQL> conn pmp/pmp@gc
已连接。
SQL> @d:\0814.sql
sql>@c:\oracle\sql\create_table.txt
执行多个sql文件:
1.把所有的文件都放在同一个目录下,然后在命令行里执行命令:
删除用户
-
drop
user “username” cascade;
授权
-
grant
connect,resource,dba to "username" ;
-
grant
create session to "username"; -- 授权用户登录权限
-
grant
create table to "username"; -- 授权用户建表权限 -
grant
unlimited tablespace to "username"; --授权用户使用不受限表空间,允许插入数据 -
grant
create sequence to "username"; --授权创建序列sequence, select myseq.nextval from dual;
-
revoke
create table from "username"; --撤销用户的建表权限
-
select
* from user_sys_privs; --查看当前用户的权限,user_sys_privs是系统视图
或者采用创建角色,授权角色后,再把用户分配该角色也是一样的效果,如:
create
grant
grant
create
grant
查看当前用户的角色
-
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; --SQL> desc xcm.myfirsttable;
修改连接数:要重启数据库
-
alter
system set processes=1000 scope=spfile; -
shutdown
immediate; -
startup;
查看用户当前连接数
-
select
count(*) from sys.v_$session; -
PL/SQL
-
[DECLARE
-
] -
[
BEGIN -
] -
[EXCEPTION
-
]
-
END
-
-
-
SET
SERVEROUTPUT ON //打开输出开关 -
BEGIN
-
DBMS_OUTPUT.PUT_LINE('Hello world!'); //输出结果 -
END;
查看表结构:desc
备份与恢复:
1、EXP备份
c:\>
指定备份文件名及路径
2、IMP恢复
c:\>
指定恢复文件名及路径
注意:
IMP-00013: 只有 DBA 才能导入由其他 DBA 导出的文件
IMP-00000: 未成功终止导入
3、冷备份:直接拷贝物理文件dbf文件。貌似应该先停止服务
热备份操作时,日志文件均需要进行归档模式,
1、先查看:archive
2、置归档:语句为:alter
3、停止服务:shutdown
4、启动服务:startup
5、alter
6、alter
以上操作后,数据库为归档方式。然后可以做备份工作。
注 意:非归档模式下唯一的数据库恢复办法就是使用冷备份;当数据库运行在归档模式下,数据库恢复过程要求使用冷备份时,归档日志是必需的;不管是冷备份、热 备份,还是export备份;不管是unix平台,还是windows平台,都可以利用at命令来定时、自动执行上述备份策略;
参考:http://www.cnblogs.com/elegantok/archive/2009/03/31/1426290.html
其他:
1、set
2、java连接数据库:
需要加载oracle的jar包:ojdbc6.jar
3、图形资料
oracle逻辑结构示意图
执行*.sql文件:
start