ORACLE数据库学习笔记(一)

数据库发展概述:

网状数据库、关系数据库、对象数据库

其中oracle数据库属于关系数据库

实例:数据库中的一些相关进程启动起来,调入到内存中,起到一个协调作用

数据库:指的是一些文件系统

控制文件.CTL  数据文件.DBF 日志文件.LOG

联机日志文件 REDO.DBF             归档日志文件

数据库打开时首先启动控制文件。由控制文件启动数据文件和日志文件

sqlplus "sys/passwd as sysdba"

DESC v$controlfile        ##查看控制文件

SELECT status,name FROM v$controlfile;    ##查看控制文件的状态和名字

同理 datafile、logfile

参数文件:并不直接参与工作,只是控制文件是由参数文件寻找的

物理结构:

                                                                参数文件


                            控制文件                                                               控制文件

            数据文件                 数据文件                                   日志文件               日志文件                           


内存结构:

1.数据库高速缓存区  内存中用来频繁访问的数据的区域  

        保持缓存池:在内存中长期保存的,频繁访问的。如 代码表 本缓存池在关闭数据库前一直保留 

        再生缓存池 :想尽快从内存中排除的对象 如 频繁访问的大表

        默认缓存池 :

2.共享池    

        库缓存区

                共享SQL区:不用再解释,提高了数据库速度

                PL/SQL区:

        字典缓存区:缓存数据字典信息,把最频繁使用的字典语句缓存到内存中

3.REDO日志缓存区:缓存日志 先进先出

4.大共享区 

5.固定SGA


逻辑结构:

块(block):存储数据的最基本单位

盘区(extent):由若干的块组成

段(segment):一个段包含多个盘区

表空间(tablespace):一个表空间对应若干个数据文件  一个表空间对应着多个段

数据文件(datafile):在数据文件中不可直接解读对应的表的信息


SQL*PLUS

什么是SQL*PLUS:一个输入以及执行SQL语句以及PL SQL块的一个交互工具 能够运行脚本语言,生成一些简单的报表,以格式化的方式输出。在8.0以后可以启动和关闭数据库


基本操作:

sqlplus "sys/passwd as sysdba"

其他自建用户则不需要输入as 例如:sqlplus "lcd/12345"即可

若实例没打开:sqlplus/nolog

                        connect sys/passwd as sysdba

                        startup            ##启动  分为三个步骤:启动实例 打开控制文件 打开数据文件

                        有时候热备份需要归档模式,就需要启动的时候不打开数据文件:startup mount

                                                                                                                          alter database archievelog

                                                                                                                          alter database open

                                                                                                                           即可将数据库非归档方式改为归档方式

                          当控制文件有丢失时,无法打开控制文件,需要 startup nomount 只启动实例,不打开控文件和数据文件。在启动实例后重新创建控制文件

关闭实例:shutdown immediate 迫使每个用户执行完当前sql语句后立即断开连接 (最常用)

shutdown:正常关闭,后不跟参数时,等所有用户断开连接后,正常关闭。但是会有空闲用户长时间链接,所以很少用此命令

shutdown transactional 迫使用户当前执行完毕后,断开连接,回复破坏的文件

shutdown about 强行关闭,很可能造成文件破坏

浏览器访问oracle数据库:

http://主机名:5560/sqlplus

ps.连接标识符输入实例名

 help index    ##查询sqlplus支持的命令

? set            ##查看set命令如何使用

select * from dept where deptno=10                ##查询部门编号为10的数据

select * from dept where deptno=&tt               ##可以自定义tt的值,方便查询任何值的数据

list                    ##查看缓冲区中所写过的命令  简写为l

l2 4                   ##查看list第2到第4行的命令      

若不小心写错,如:select * fron dept  我们会发现把from错写为fron,此时可以如下操作

l                          ##查看命令,发现写错

c/n/m                ##把n替换为m

/                        ##执行缓冲区的命令


DEL 4                    ##删除缓冲区中第4行命令   DEL 2 4 删除第二到第四行命令

A 命令            ##在缓冲区追加命令 如:目前缓冲区是select * 我们可以输入A from dept  再输入l 就会发现变成了select * from dept

save c:\oracle\test.txt       ##把缓冲区命令保存到路径中(test.txt若不存在会自建)

@ c:\oracle\test.txt          ##执行路径中的命令

get c:\oracle\test.txt             ##获取路径中文本的内容(不执行)

edit                         ##默认打开记事本编辑缓冲区中的命令(不需要写;)

desc                        ##描述

break on XXX            ##XXX列重复的只显示一遍

col    ttittle     btittle    comp 等命令

        spool c:\oracle\spool.txt   

        select * from dept

        spool off                       ##把sql语句输出的数据保存到路径 再edit c:\oracle\spool.txt编辑


你可能感兴趣的:(数据库)