Oracle 常用的查询语句

来源:转载

1.登录数据库的几种方式

[[email protected] ~]$ sqlplus /nolog

                        SQL> conn / as sysdba


[[email protected] ~]$ sqlplus / as sysdba


[[email protected] ~]$ sqlplus sys/[email protected] as sysdba


2.修改用户的密码

重建密码文件
需要重建密码文件,具体步骤如下:
1.首先,确定你的密码文件的路径和名称:在windows下密码文件路径oracle_home/database
密码文件名称pwd+sid.ora
在unix下密码文件路径oracle_home/dbs密码文件名称pwd+sid Sid为实例名称,查看实例名称
Select instance_name from v$instance;
select 'pwd'||instance_name||'.ora' from v$instance;
2.将原密码文件重命名为pwd+sid+back.ora
Linux平台:
orapwd file=$ORACLE_HOME/dbs/orapw$ORACLE_SID password='' entries=n
 注意这里$ORACLE_SID的大小写
 给用户赋予sysdba权限后会记录在v$pwfile_users视图中,如果密码文件不存在会返回ORA-01994的错误
 Win平台:

orapwd file=$ORACLE_HOME/database/pwd$ORACLE_SID.ora password='' entries=n
ORACLE_SID为环境变量,注意大小写,password要求跟数据库sys密码一致,n表示拥有SYSDBA权限的最大用户数量
方法二
Oracle提供两种验证方式,一种是OS验证,另一种密码文件验证方式
如果是第一种方式用以下方法修改密码:
sqlplus /nolog;
connect / as sysdba
alter user sys identified by ;
alter user system identified by ;
如果是第二种方法用以下方法修改密码:
orapwd file=pwdxxx.ora password=你设定的新密码 entries=10
设定完后,重新启动服务,再次登陆就可以了。


3.查询结果格式输出

SQL> col name for a50SQL> select file#,name,status from v$datafile;     FILE# NAME                                               STATUS---------- -------------------------------------------------- -------         1 /db/oracle/oradata/orcl/system01.dbf               SYSTEM         2 /db/oracle/oradata/orcl/sysaux01.dbf               ONLINE         3 /db/oracle/oradata/orcl/undotbs01.dbf              ONLINE         4 /db/oracle/oradata/orcl/users01.dbf                ONLINE

4.查询oracle的告警日志
SQL> show parameter dump

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
background_core_dump                 string      partial
background_dump_dest                 string      /db/oracle/admin/orcl/bdump
core_dump_dest                       string      /db/oracle/admin/orcl/cdump
max_dump_file_size                   string      UNLIMITED
shadow_core_dump                     string      partial
user_dump_dest                       string      /db/oracle/admin/orcl/udump

5.查看归档模式以及路径
SQL> archive log list;
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            /opt/archivelog/
Oldest online log sequence     33
Next log sequence to archive   35
Current log sequence           35

6.改为归档模式:

SQL >shutdownimmediate;

SQL >startupmount;

SQL >alterdatabase archivelog;

SQL >alter database open;


7.改为非归档模式:

SQL >shutdownimmediate;

SQL >startupmount;

SQL >alterdatabase noarchivelog;

SQL >alter database open;

注意自动归档参数:在oracle10g之后就不在需要更改:在oracle9i中,需要手动开启自动归档参数:

SQL >altersystem set log_archive_start=true scope=both;

SQL >shutdown immediate;

SQL >startup;


8.修改归档路径

SQL > altersystem set log_archive_dest_1=’location=/u01/archivelog/’;


9.在oracle10g中,修改存储路径(闪回区)的大小:

SQL > altersystem set db_recovery_file_dest_size=5G;


10.在oracle10g中,默认的归档路径为$ORACLE_BASE/flash_recovery_area

对于这个路径,oracle有一个限制,就是默认只能有2G的空间给归档日志使用,可以使用下面的语句查看:

SQL > show parameter db_recovery_file_dest;


11.在oracle中新建用户并授权

SQL > create user eisoo identified by eisoo defaulttablespace tset quota 10m on users;

SQL > grant sysdba to eisoo

或者SQL>grantconnect,resource,dba,sysdba to eisoo


12.删除用户

SQL > drop user  eisoo(用户名)


13.创建表和删除表

SQL> create table test1
     ( id number(10) not null,

       Namenumber(2) not null,

       Phonenumber(10),

      );


14.删除表

SQL > Drop table test1

15.参数文件

数据库有了参数文件可以启动到nomount状态,有了控制文件可以启动到mount状态。参数文件如下:

二进制文件:spfile ;可编辑文件:pfile    

可以通过:SQL> create pfile from spfile;获得pfile

参数文件包括大量影响Oracle数据库实例功能的设定,如以下设定:

   1.数据库控制文件的定位

   2.Oracle用来缓存从磁盘上读取数据的内存数量

   3.默认的优化程序的选择   

和数据库文件相关,执行两个重要的功能:

1.为数据库指出控制文件

2.为数据库指出归档日志的目标

可以通过如下命令查看:SQL> show parameter spfile;


16.查询基本信息

SQL>   selectname from v$datafile;     查询数据文件

SQL>   selectname from v$controlfile;   查询控制文件

SQL>   selectmember from v$logfile;     查询redo日志文件

SQL>   selectname from v$database;     查询数据库名

SQL>   selectinstance_name from v$instance;  查询实例名

SQL>   selectstatus from v$instance;      查询实例的状态

SQL> select a.name,b.name from v$tablespace a,v$datafileb where a.ts#=b.ts#;  查询数据库表空间






分享给朋友:
您可能感兴趣的文章:
随机阅读: