当前位置: 首页 >> 数据库 >> 【数据库】Linux下和Windows下 Oracle的常用操作命令 >> 正文

【数据库】Linux下和Windows下 Oracle的常用操作命令

2015年04月09日 18:51:28    作者:Jiaozn    分类:数据库     评论(0)

windows

------------------------------------------------------------

管理员账户登录:conn / as sysdba;

解锁用户:alter user username account unlock;

更改用户密码:alte user username identified by newpassword;


重启

shutdown immediate

执行结束后会返回下面的信息
Database closed.
Database dismounted.
ORACLE instance shut down.
该操作完毕后执行命令
startup
系统会完成数据库启动


创建临时表空间:

create temporary tablespace temp

tempfile 'D:\oracle\product\10.2.0\oradata\yourSID\temp.dbf'

size 50m 

autoextend on 

next 50m maxsize 2048m 

extent management local; 

创建数据表空间: 

create tablespace tablespacename

logging 

datafile 'D:\oracle\product\10.2.0\oradata\yourSID\tablespacename.dbf'

size 50m 

autoextend on 

next 50m maxsize 2048m 

extent management local; 

创建用户并指定表空间:

create user username identified by password

default tablespace tablespacename;

给用户授予权限:  grant dba to username; 

 

清空表数据:truncate table tablename;

生成所有表的删除命令:select 'drop table '||table_name||';' from user_tables;

删除用户:drop user username cascade;

删除表空间:drop tablespace tablespacename including contents and datafiles;


导入数据库:imp username/password@sid file='d:\a.dmp' fromuser=username1 touser=username2 ignore=y;

导入单个表:imp username/password@sid file='d:\a.dmp' tables=(tablename1);

导入两个表及以上:imp username/password@sid file='d:\a.dmp' tables=(tablename1,tablename2……);

导出数据库:exp username/password@sid file='d:\a.dmp' full=y;

导出单个表:exp username/password@sid file='d:\a.dmp' tables=(tablename1);

导入两个表及以上:exp username/password@sid file='d:\a.dmp' tables=(tablename1,tablename2……);


导入数据库pde文件:选择工具-导入表,在pl/sql developer标签下的,在创建表,删除记录,禁止触发器,禁止外键约束前打钩,然后导入文件那选择刚才导出生成的pde文件,按导入。


设置每行显示的记录长度: set linesize 300;

设置每页显示的记录长度: set pagesize 30;


sqlplusw窗口中,生成文本文件: ed [name];调用该文本文件: @ [name];

查看所有表:select * from tab;

查看表结构:desc [tablename];

给指定表增加列:alter table 表名【T_SYS_MAILLOGGER】 add 列名【LOGGERTYPE】 NUMBER(1)【不同情况】;

给该列增加注释:comment on column T_SYS_MAILLOGGER.LOGGERTYPE is 注释【'日志类型1为发送,2为接收'】;

给指定表增加数据:INSERT INTO 表名称 VALUES (值1, 值2,....);INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....)

例子:INSERT INTO Persons (LastName, Address) VALUES ('Wilson', 'Champs-Elysees')

修改数据:UPDATE Person SET Address = 'Zhongshan 23', City = 'Nanjing' WHERE LastName = 'Wilson'

生成未用的base_sequence: select base_sequence.nextval  from dual;


------------------------------------------------------------

 

Oracle

------------------------------------------------------------

# su - oracle

$ sqlplus /nolog

SQL> connect / as sysdba


--//创建临时表空间

create temporary tablespace test_temp

tempfile '/data/oracle/oradata/test/test_temp01.dbf' --//Linux下的文件系统

size 64m

autoextend on

next 64m maxsize 2048m

extent management local;

--//创建数据表空间

create tablespace test_data

logging

datafile '/data/oracle/oradata/test/test_data01.dbf' --//Linux下的文件系统

size 64m

autoextend on

next 65m maxsize 2048m

extent management local;

--//创建用户并指定表空间 用户名和密码均为"test"

create user test identified by test

default tablespace test_data

temporary tablespace test_temp;


--//给用户授予权限

grant connect,resource to test;

--//删除表空间

drop tablespace test_temp including contents and datafiles;

--//修改用户密码

alter user test identified by new_password;

--//删除用户

drop user 用户名 cascade; --//执行该语句请小心,会级联删除该用户下所有对象。


--//给用户分配权限

SQL> grant connect to test_user;

SQL> grant resource to test_user;

SQL> grant create view to test_user;

SQL> GRANT DEBUG CONNECT SESSION TO test_user;

SQL> GRANT DEBUG ANY PROCEDURE TO test_user;

(导入备份)imp name/password file=/home/Oracle/xzfw.dmp fromuser=cc(这个是当时导出数据时Oracle的用户名) touser=cc ignore=y

(导出备份)exp name/password file=/home/Oracle/xzfwbk.dmp full=y


除非注明,发表在“Jiaozn的博客”的文章『【数据库】Linux下和Windows下 Oracle的常用操作命令』版权归Jiaozn所有。 转载请注明出处为“本文转载于『Jiaozn的博客』原地址https://jiaozn.com/reed/113.html

评论

发表评论   

昵称*

E-mail*

网站