数据库之Oracle的介绍与使用20180620
/*******************************************************************************************/
一、oracle的安装
1.数据库从类型上分为:
关系型数据库:oracle mysql
非关系型数据库:mongodb
2.oracle的安装
分为服务器安装和客户端安装
服务端安装:注意选择默认配置方式
客户端安装:注意选择管理员方式,(服务器和客户端可以装在一台机子上)
注意事项:安装目录不能有中文和空格
3.安装软件与步骤
安装软件使用的是oracle11g,有linux版本和windows版本可以从官网下载,现在讲的使用的是windows 64位的,版本是11gR2
步骤:
1).解压安装文件,运行database目录下的setup.exe
2).安装时注意不要oracle的支持,安装配置时,
注意选择Create and configure a database,因为会自动生成一个用户(scott),方便平时个人使用一般公司使用Install database software only
3).选择Desktop Class模式
4).典型安装设置中,注意设置的目录不要有中文和空格
database edition选择Enterprise Edition企业版
Global database name 填orcl,这个表示的实例名
其他默认,并注意设置用户名和密码
5).一直到安装完成会有个界面出现password management
点击后可以配置用户,解锁账户并配置密码,一般用了两个HR和SCOTT两个用户
6).oracl自带了一个客户端软件脚SQL Developer,但是我们一般用PLSQL Developer,其实功能都差不多。
7).检验是否安装好
本机安装,直接在dos下执行 sqlplus / as sysdba 使用dba用户登录
本机安装安装的,也可执行 sqlplus scott/密码
或者执行 sqlplus scott/密码@orcl
都是使用scott用户登录,其中加@这个是远程登录的意思,依赖于开启了侦听服务。
比如@orc100,那么就会去读取配置文件tnsname.ora,从中就可以找到orc100对应的ip+实例名,通过这个访问到数据库。所以访问方式也可以改成:
sqlplus scott/11@//192.168.137.100/orcl,这样就不用配置任何的配置文件了
8).两个服务
在运行中执行services.msc,在服务中找到or开头的,这些都是or提供的服务,
重点是:
OracleOraDb11g_homeTNSListener和OracleServiceORCL这两个服务
OracleServiceORCL实例的主服务,Oracle启动的一个叫ORCL的实例,决定数据库是否启动
OracleOraDb11g_homeTNSListener 监听服务(侦听服务),
如果以后发现Oracle操作不了了,就是需要去关注这两个服务正常不正常,有没有启动起来
也就是说这两个服务没有正常启用,登录Oracle数据库是登录不了的
具体见《Oracle 11G 安装文档.doc》
/*******************************************************************************************/
二、oracle公司简介
也就是甲骨文公司,收购了weblogic(java应用服务器)和sun
/*******************************************************************************************/
三、oracle体系结构
数据文件+实例,注意其中的数据文件,也就是数据库位于硬盘上,实例位于内存中。
框架图见图1:
一般来说,就是一个实例对应一下db files
也有特殊的,
比如多个实例管理一个数据库的,这几个实例也叫做集群,oracle中集群称为:RAC(real application cluster)
客户端软件是通过实例去操作数据库的,这个实例可以是多个实例(集群)中的一个,
集群的好处:
1.负载均衡
一般一台机器上运行一个实例(实例和文件可以部署在不同的机器上),如果访问很多的话,多个实例就可以让不至于一台机器负载太多。
2.失败迁移
当一台实例失败时,可以自动的切换到另外一个实例。也就是当失败的时候可以直接切换到下一个实例,这个过程中应用不需要停下来。
实例的详细介绍见图2:
实例是运行在内存中,是若干个操作数据库的进程的集合,也就是管理系统(RDBMS(关系型数据库管理系统))
里面主要有很多读写进程,去操作数据库文件的。这是在后端,
在另外一端,有一个叫pga的,
pga:program global area(程序全局区),pga的作用是给我们客户端使用的,一个客户端对应一个pga,显然实例中有多个pga。
pga也不是直接操作数据文件的,pga后面还有一个sga,
sga:system global area(系统全局区)
一个提交操作的流程:
比如有一个提交操作是通过客户端提交给pga,pga提交到sga,然后再由sga操作读写进程,最终操作数据库。
也就是说内部有两次提交,两次提交是为了支持闪回,
闪回:对已经提交的操作,进行回退。
闪回需要开启 行移动。
/*******************************************************************************************/
四、oracle相关概念
逻辑概念:表空间,表空间由多个数据文件组成。位于实例上,在内存中。
oracle接触到最多的就是表,表是oracle存储的基本单位,这个表就是存放在表空间上,
物理概念:数据文件,位于硬盘之上(c:\app\administrator\oradata\orcl目录内后最为.DBF的文件)
一个表空间可以包含多个数据文件。1:n(表空间:数据文件)
段存在与表空间中,段是区的集合,区是数据块的集合,数据块会被映射到磁盘,可看图3:
具体结构关系可看图4:
其中的数据库这一块可以看成是实例,
数据库层次结构见图5:
DBA(数据库管理员)
/*******************************************************************************************/
五、登录
登录管理员
sqlplus /as sysdba
登录管理员不需要输入密码,这是因为oracle安装的时候将sys用户和本地操作用户绑定,所以可以直接登录
登录指令:
对于自己安装服务器的
sqlplus scott/11
对于使用虚拟机
sqlplus scott/11@//192.168.137.100/orcl(要连接到137.100的服务器上的orcl数据库)
sqlplus scott//11@orc1100(可以替代上一条命令,由于事先设置了配置文件)
配置文件:client_1>network>admin>tnsnames.ora
服务器和客户端都具有sqlplus.exe文件,在bin目录下,
还有在服务器中的oradata中的orcl(实例)目录下,有.dbf的数据文件,也有.ctl的控制文件。
如果忘记密码就要在服务器中,登录管理员:sqlplus /as sysdba,如果不行则加上密码:sqlplus sys/sys as sysdba
登录后就可以修改密码了
修改密码的命令是alter,如:
解除账户锁定并修改密码:
alter user scott account unlock
alter user scott identified by 11;//重设密码为11
/*******************************************************************************************/
六、配置与配置文件
登陆命令sqlplus scott/11@orcl222中的orcl222来自于
配置文件tnsnames.ora,在配置文件中成为服务名
增加新的登陆服务,可以参考该文件中的其他登陆服务来填写服务名,ip,端口号,实例名
也可以使用工具来完成这个增加的操作 :
工具名称:oracle net configuration assistant
注意,
登陆数据库的工具:pl/sql developer 中的drop命令表示的是删除的意思 。
/*******************************************************************************************/
七、rehat启动oracle
即linux下启动oracle服务,即Linux下装了oracle 然后启动。
1.登录到oracle用户 su -oracle
加-表示携带环境变量
2.sqlplus / as sysdba
3.startup 启动实例
出现System Global Area表示启动成功了
4.quit
5.lsnrctl start
(shell环境执行)启动监听服务。
6.远端
用tnsping 来ping服务器
然后用sqlplus来登录。
7.可能需要服务器关闭防火墙
切换到管理用户:
su
执行:
service iptables stop
dba,oracle认证的级别
oca
ocp 2w+
ocm 3w
/*******************************************************************************************/
八、oracle项目方案
见 《oracle项目案例(Oracle客户端测试用).sql》
这个脚本文件是一个完整创建用户的过程。
注意,
1.21行中的TABLESPACE USERS,users这个表空间是orcl默认给的表空间。
2.
-- 03 创建表
-- 创建部门表 并赋值,-- 是注释
CREATE TABLE MYSCOTT.DEPT(
DEPTNO NUMBER(2) PRIMARY KEY,
DNAME VARCHAR2(14) NOT NULL,
LOC VARCHAR2(13)
)TABLESPACE ts_myscott;
//TABLESPACE ts_myscott 指定表空间,由于当前是dba用户,所以指定用户名MYSCOTT.DEPT
脚本的使用:
打开plsql开发工具,然后登录dba用户,再打开command window,在该窗口下,把文件中所有的内容粘贴到该窗口下就可以了。
测试新用户是否创建成功:
登录用户:
sqlplus MYSCOTTUSER1/123456@orcl100;
select * from myscott.emp;
/*******************************************************************************************/
九、plsql工具相关介绍
ed 表名;
工具里面使用ed命令
这个时候出来的界面里面,就是直接进行表的相关操作,并从这里点击view sql就可以推出表相关操作对应的语句。
并且这个界面还可以给表加各种约束,比如主键啥的,还可以创建索引等等。
并可以推出表相关操作对应的语句。
同样,
ed 视图名
或者ed 序列名
就能看到视图或者序列相关的操作,
比如视图能看到 视图创建的语句
使用工具插入或者导入数据:
select * from emp2 where 1=2 for update;
for update就是表示接下来要(增加)修改,
此时点击解除锁定后,这时就可以修改这个表的,可以手动在表里面填入数据,也可以直接粘贴数据过来。
数据填好后再打勾,然后锁定
导出数据
export 表名
就会出现界面,这里有导出的配置,导出的是创建这个表的sql语句,包括建表,insert等语句
导出的sql语句直接粘贴到敲命令的窗口就可以直接全部执行了。
数据库之Oracle的介绍与使用20180620的更多相关文章
- 数据库事务隔离级ORACLE数据库事务隔离级别介绍
本文系转载,原文地址:http://singo107.iteye.com/blog/1175084 数据库事务的隔离级别有4个,由低到高依次为Read uncommitted.Read committ ...
- iOS开发数据库篇—SQLite简单介绍
iOS开发数据库篇—SQLite简单介绍 一.离线缓存 在项目开发中,通常都需要对数据进行离线缓存的处理,如新闻数据的离线缓存等. 说明:离线缓存一般都是把数据保存到项目的沙盒中.有以下几种方式 (1 ...
- 【体系结构】Oracle参数介绍
[体系结构]Oracle参数介绍 1 BLOG文档结构图 2 前言部分 2.1 导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~O(∩_∩ ...
- SQLite数据库和JPA简单介绍
SQLite数据库和JPA简单介绍 一.SQLite简单使用 SQLite是遵循ACID的关系数据库管理系统,它的处理速度很快,它的设计目标是嵌入式的,只需要几百K的内存就可以了. 1.下载SQLit ...
- 【转】 iOS开发数据库篇—SQLite简单介绍
开始学SQLite啦, 原文: http://www.cnblogs.com/wendingding/p/3868893.html iOS开发数据库篇—SQLite简单介绍 一.离线缓存 在项目开发中 ...
- Oracle asm介绍和安装linux+oracle10g+asm过程
Oracle asm介绍和安装linux5.2+oracle10g+asm过程 1)ASM(自动存储管理)的来由: ASM是Oracle 10g R2中为了简化Oracle数据库的管理而推出来 ...
- Oracle Dataguard 介绍
Oracle DataGuard介绍 一. DataGuard的基本原理 当某次事务处理对生产数据库中的数据作出更改时,Oracle数据库将在一个联机重做日志文件里记录此次更改.在DataGuard中 ...
- Oracle组成介绍
Oracle Database 11g是一些特殊文件的集合,这些文件是用数据库配置助手创建的,然后用OEM Grid Control完成相关工作.这些数据库文件是通过一组共享内存进程来进行访问的,这组 ...
- {MySQL数据库初识}一 数据库概述 二 MySQL介绍 三 MySQL的下载安装、简单应用及目录介绍 四 root用户密码设置及忘记密码的解决方案 五 修改字符集编码 六 初识sql语句
MySQL数据库初识 MySQL数据库 本节目录 一 数据库概述 二 MySQL介绍 三 MySQL的下载安装.简单应用及目录介绍 四 root用户密码设置及忘记密码的解决方案 五 修改字符集编码 六 ...
随机推荐
- 用Solidity在Truffle上构建一个HelloWorld智能合约
原文地址:石匠的blog Truffle的环境安装在前文已经整理,这次用Solidity在Truffle写一个HelloWorld以太坊智能合约,并在testrpc上进行测试.当前的软件版本信息如下: ...
- docker pull下来的镜像放哪儿了?
本机docker版本 docker –version Docker version 1.进入docker 目录 root@Rightsec:~# cd /var/lib/docker root@Rig ...
- NEWBEE软件团队 人员分配情况及分数获得方式
人员分配: PM:李桐 王骜 dev:王骜 刘垚鹏 安康 林旭鹏 黄新越 test:黄伟龙 李桐 马佐霖 黄新越 注:黄新越为女生,不方便平时的交流,所以任务分配较为灵活,特分在两个组里. 评分 ...
- Linux基础入门--01~03
- 团队冲刺——Three
第三天计划: 季方:学习爬虫的操作,以便后续功能实现: 司宇航:对当天实现的功能进行总的测试: 王金萱:数据库内数据的增删改查以及查看团队博客界面的实现: 马佳慧:学习css初步,进行页面绘制: 第二 ...
- Chapter 6 面向对象基础
面向对象=对象+类+继承+通信,如果一个软件系统采用这些概念来建立模型并给予实现,那么它就是面向对象的.面向对象的软件工程方法是面向对象方法在软件工程领域的全面运用涉及到从面向对象分析.面向对象设计. ...
- BufferedInputStream 缓冲输入字节流 -------上
package com.BufferedInputStreamUse; import java.io.BufferedInputStream; import java.io.File; import ...
- php----函数大全
字符串函数 数组函数 数学函数
- SDWebImage缓存图片的机制
SDWebImage是一个很厉害的图片缓存的框架.既ASIHttp+AsyncImage之后,我一直使用AFNetworking集成的UIImageView+AFNetworking.h,但后者对于图 ...
- 蜗牛慢慢爬 LeetCode 20. Valid Parentheses [Difficulty: Easy]
题目 Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine if the i ...