Oracle学习总结(一)入门:服务端、客户端安装

什么是数据库

数据库的英文是DataBase,简称DB,顾名思义,就是数据(包括数字、文字、图像、声音、视频等)存放的地方。因此,数据库的主要作用就是用来存储数据的。

什么是关系型数据库管理系统(RDBMS)

关系型数据库管理系统(Relational Database Management System),是将数据组织为相关的行和列的系统,而管理关系型数据库的计算机软件就是关系数据库管理系统,常用的数据库软件有Oracle,Microsoft SQL Server,DB2,MySQL,ProgresSQL等等。

什么是关系型数据库

关系型数据库是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。

什么是Oracle

Oracle,全称甲骨文股份有限公司(甲骨文软件系统有限公司),是全球最大的企业级软件公司,总部位于美国加利福尼亚州的红木滩。1989年正式进入中国市场。2013年,甲骨文已超越 IBM ,成为继 Microsoft 后全球第二大软件公司。Oracle公司的网址为http://www.oracle.com。Oracle在企业的大型应用、海量存储、高性能、高并发、安全性等方面都相当不错,被广泛应用于各个领域。Oracle不仅有数据库产品,而且也是ERP软件的供应商。

Oracle服务端安装

参照其他博客资料,我安装的是Oracle10g简化版,这里要注意的是Oracle XE http端口8080的修改(会与tomcat的端口冲突),解决办法如下:
1.以dba身份登录XE
2.执行下列语句

 begin
   dbms_xdb.sethttpport('7000');
   dbms_xdb.setftpport('0');
 end;
 /

这样就把默认的8080端口改成7000了,不用重启oracle服务,即时生效!

Oracle的服务端口,默认是1521;sys和system是系统的管理员帐号,默认密码是安装Oracle时指定的口令。
测试是否安装成功:
在安装有oracle的机器上,运行cmd,输入:sqlplus sys/口令@localhost:1521/xe as sysdba

Oracle的服务的了解
在这里插入图片描述
数据库实例服务和监听服务必须启动,其他都可以禁用。(如果安装到本机,那么建议全手动。)
数据库实例服务:Oracle+Service+SID,简化版的Oracle默认的sid是xe(邪恶),完整版的Oracle默认的SID是orcl。
监听服务:Oracle+SID+TNSListener。
建议先启动实例服务:OracleServiceXE,再启动监听服务
提醒:每次重启或开启服务的时候,需要等一会再连接。

Oracle客户端的安装和配置

PL/SQL Developer 工具安装,我安装的是绿色免安装版本,网上搜搜,下载安装完毕后,用户名sys和密码登陆,默认库xe,按照SYSDBA连接
Tools->Preferences->工具可以设置SQL行号,关键字自动大写,取消自动升级,设置检查连接等等

Oracle客户端连接知识(客户端连接验证机制、客户端登录身份)
1、客户端连接验证机制
Oracle有三种连接验证机制:

  • 操作系统验证(具有sysdba和sysopera的用户)
  • 密码文件验证(具有sysdba和sysopera的用户)
  • 数据库密码验证(普通用户和超级用户)

超级管理员连接数据库的方式:sqlplus sys/口令@localhost:1521/xe as sysdba,免登录必须在安装有Oracle服务的服务器上才有效。
免密码登录的原因:oracle安装时自动创建了一个ora_dba的组,并将当前用户放入该组。如果你连接oracle的时候,会优先使用来查找当前用户是否在组中。如果在组中,则不需要密码就可以登录。
免登录要求:必须在安装有Oracle的本机上才能使用。
注意:我们平时用的连接机制是数据库密码验证的机制。

关于验证的优先级顺序:
对于 SYSDBA身份 和 SYSOPER来说,OS验证优先于密码文件认证。因此,在服务器的机器上,你可以无需指定登录用户名或者任意指定登录用户名,均可以登录。
该特性的一个应用场景就是免登录解锁用户:sqlplus / as sysdba

案例:通过超级管理员对Oracle用户解锁和找回密码
先通过超级管理员免密登陆:sqlplus / as sysdba
修改用户密码:alter user 用户名 identified by 密码;
给用户加锁:该用户不能登陆:alter user 用户名 account lock;
给用户解锁:该用户可以登陆:alter user 用户名 account unlock;

提示
因为不需要密码是不安全的,所以一般用作服务器的话,要在计算机管理中的用户组ora_dba把administrator删除,删除之后登录就需要输入密码了。
conn / as sysdba连接时,使用的是当前登陆操作系统的用户名和密码认证。如果oracle是由当前用户安装的,那它可以成功登陆,通俗点说,当你用“as sysdba”登录时是按照操作系统用户验证的,也就是说oracle认为你都已经是这台电脑的老大了,我oracle没法限制你。

2、客户端登录的身份
Oracle有三种身份登录方式:Normal、sysdba、sysoper

  1. normal:普通用户身份,默认选项(默认可以不写),用于普通用户登录使用。—记录日志(你的任何操作oracle都会记录一份日志)。sqlplus scott/tiger@localhost:1521/xe
  2. sysdba:数据库管理员身份,用于给拥有DBA权限的用户登录使用。(拥有数据库)
    该身份可以进行的操作: 打开、关闭数据库服务器, 备份、恢复数据库, 日志归档,会话限制,管理功能,创建数据库等。----操作是不计日志的。
  3. sysoper:数据库操作员身份,用于给拥有DBA权限的用户登录使用。
    该身份可以进行的操作: 打开、关闭数据库服务器, 备份、恢复数据库, 日志归档,会话限制等。----记录日志

作为开发人员,如何选择Oracle的登录身份?

  • 普通用户进行数据操作,就用normal。(默认值)
  • Sys用户就用sysdba。–(sys相当于mysql:root)

用户和表

默认情况下,完整版的Oracle安装完成后,只解锁两个有效用户:sys,system; scott用户需要解锁。而简化版的Oracle安装完成之后,无scott用户。

【新建Scott用户】
需要我们手动建立和导入:
1、先建立scott用户(必须是sys用户登录进的)
2、右键users,新建,然后设置用户名和密码:用户名为scott密码为tiger
在这里插入图片描述
3、添加两个角色
在这里插入图片描述
在这里插入图片描述
4、完成后,点击apply,使用该用户登录(普通用户登录)
5、登录进去之后,导入表tools->import tables
6、然后就可以查询数据

导入的表结构分析:
在这里插入图片描述
ORACLE常用数据类型
在这里插入图片描述
说明:
Char类型:定义长度时,如果存储的数据小于长度,空位补空格。固定长度的类型

  • 缺点:浪费存储空间,char(3) m 空格空格m,Char类型中存在空格,那么在程序取值比较时容易出错,在ORACLE中使用trim()函数,会造成char类型字段上的索引失效
  • 优点:char类型在效率上比着其它字符类型的会快一点

Varchar2类型: 可变长度。存储时如果数据小于长度,varchar的长度按实际存储长度计算

  • 优点:节省存储空间 varchar2(3) 你好 你好
  • 缺点:效率比char类型低。
    注意:varchar2只有Oracle才有的。带2的是Oracle自己增强的数据类型,不是sql99规范中的。

Clob类型:是longtext类型的代替品,存储超大量的字符串。如果varchar存储不了,可以用这个。但效率很低下,而且不能使用上索引。这玩意的存储大小不是按长度存储,按字节数存储的。

  • 优点:Blob 存储海量二进制类型。例:电影、音乐、高清图片。
  • 缺点:每次存储时都需要转换为二进制进行存储,获取时把二进制转为数据,通常存储电影、音乐时存储的是文件的路径

Oracle所有的数据类型:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值