oracle基础教程(第一天)

一、做项目该用什么数据库要考虑哪些方面?
1.项目的规模
2.负载量多大,用户多大
3.成本
4.安全性

小型数据库(access、foxbase)
1.负载量小,用户量在1000人以内,比如留言板,小型信息系统
2.成本在千元左右
3.对安全性要求不高

中型数据库(mysql、sql server、informix)
1.负载,日访问量在5000~15000
2.成本,万元以内  比如电子商务网站

大型数据库(sybase、oracle、db2)
1.负载可以处理海量数据
2.成本上万元,较为昂贵
3.安全性高,通过最高级别安全认证


二、安装oracle

1.oracle安装会自动生成sys用户和system用户
(1)sys用户是超级用户,拥有最高的权限,具有sysdba角色,有create database的权限,该用户默认的密码是change_on_install
(2)system用户是管理操作员,权限也很大。具有sysoper角色,没有create database的权限,默认的密码是manager
(3)一般讲,数据库维护使用system用户登录就可以了


三、sql*plus常用命令
1.conn[ect]
    用法:conn 用户名/密码@网络服务名 [as sysdba/sysoper]
    当特权用户身份连接时,必须带上as sysdba或是as sysoper
     SQL>conn system/manager
2.disc[onnect]
    说明:该命令用于断开与当前数据库的连接
3.passw[ord]
    说明:该命令用于修改用户的密码。如果要想修改其他用户的密码,需要用sys/system登录。
4.show user
    说明:显示当前用户名
5.exit   
    说明:该命令会断开与数据库的连接,同事会退出
6.文件操作命令
(1)start和@
    说明:运行sql脚本
    案例: SQL>@ d:\aa.sql   或者     SQL>start d:\aa.sql
(2)edit
    说明:该命令可以编辑指定的sql脚本
    案例: SQL>edit d:\aa.sql
(3)spool
    说明:该命令可以将sql*plus屏幕上的内容输出到指定的文件中去
    案例: SQL>spool d:\bb.sql  并输入   SQL>spool off
7.显示和设置环境变量
概述:可以用来控制输出的各种格式,set show 如果希望永久的保存相关的设置,可以去修改glogin.sql脚本
(1)linesize
    说明:设置显示行的宽度,默认是80个字符
     SQL>show linesize
     SQL>set linesize 120
(2)pagesize
    说明:设置每页显示的行数目,默认是14,用法和linesize一样
至于其他环境参数的使用也是大同小异


四、oracle用户的管理
1.创建用户
概述:在oracle中药创建一个新的用户使用create user语句,一般是具有dba(数据库管理员)的权限才能使用。
SQL>create user xiaoming identified by m123;
2.给用户修改密码
概述:如果给自己修改密码可以直接使用
SQL>password 用户名
概述:如果给别人修改密码则需要具有dba的权限,或是拥有alter user的系统权限
SQL>alter user 用户名 identified by 新密码
3.删除用户
概述:一般以dba的身份去删除某个用户,如果用其它用户去删除用户则需要具有drop user的权限。
比如drop user 用户名 【cascade】
在删除用户时注意,如果要删除的用户,已经创建了表,那久就需要再删除时带一个参数 cascade。
4.给一个普通用户赋权限
权限分为系统权限和对象权限
系统权限是指用户对数据库的相关权限。例如建库,建表,建索引,建存储过程,登录数据库,修改密码等。 grant connect to xiaoming;
connect就是一种预定义角色,给xiaoming这个用户赋予connect角色所具有的权限。这里使用到的是系统权限。
对象权限是指用户对其他用户的数据对象访问(操作)的权限。其中,数据对象指用户创建的表,视图,存储过程,触发器等。
角色分两种,一种为预定义角色,一种为自定义角色    
希望xiaoming用户去查询scott用户中的emp表:需要用到对象权限的使用。
SQL>grant select on emp to xiaoming      sys和system和scott具有这种赋权的权限。
希望xiaoming用户可以去修改、删除、查询、添加scott中的emp表
SQL>grant all on emp to xiaoming
scott希望收回xiaoming对emp表的查询权限
SQL>revoke select on emp from xiaoming
对权限的维护
希望xiaoming用户可以去查询scott的emp表,还希望xiaoming可以把这个权限继续给别人
--如果是对象权限,就加入with grant option
SQL>grant select on emp to xiaoming with grant option
--如果是系统权限  system给xiaoming赋权时做如下执行,则xiaoming可以赋予其他人connect的权限
SQL>grant connect to xiaoming with admin option
--如果scottxiaoming对emp表的查询权限回收,那么xiaohong会怎么样?
事实证明,xiaoming赋予xiaohong的权限也被回收了。
5.使用profile管理用户口令
概述:profile是口令限制,资源限制的命令集合,当建立数据库时,oracle会自动建立名称为default的profile,当建立用户没有指定profile选项,那oracle就会将default分配给用户。
(1)帐户锁定
概述:指定该帐户(用户)登录时最多可以输入密码的次数,也可以指定用户锁定的时间(天)一般用dba的身份去执行该命令
例如:指定xiaoming这个用户最多只能尝试3次登陆,锁定时间为2天
创建 profile 文件
SQL> create profile lock_account  limit failed_login_attempts 3  password_lock_time 2;
SQL> alter user xiaoming  profile lock_account;
(2)给帐户(用户)解锁
SQL> alter user xiaoming  account unlock;
(3)终止口令
为了让用户定期修改密码,可以使用终止口令的指令来完成,同样这个命令也需要dba身份来操作。
SQL> create profile myprofile  limit password_life_time 10  password_grace_time 2;
SQL>alter user xiaoming profile myprofile;
(4)口令历史
概述:如果希望用户在修改密码时,不能使用以前使用过的密码,可使用口令历史,这样oracle就会将口令修改的心细存放到数据字典中,这样当用户修改密码时,oracle就会对新旧密码进行比较,当发现新旧密码一样时,就提示用户重新输入密码,
例子:
    1)建立profile
     SQL> create profile password_history  limit password_life_time 10  password_grace_time 2  password_reuse_time 10;
    password_reuse_time  //指定口令可重用时间即10天后就可以重用。
    2)分配给某个用户
(5)删除profile
概述:当不需要某个profile文件时,可以删除该文件。
SQL> drop profile password_history [cascade]
oracle基础教程 课程说明 1 课程介绍 1 课程目标 1 相关资料 1 第1章 ORACLE数据库概述 2 1.1 产品概述 2 1.1.1 产品简介 2 1.1.2 基本概念 3 1.2 ORACLE系统结构 4 1.2.2 ORACLE物理结构 4 1.2.3 系统全局区 6 1.2.4 进程 8 1.3 存储管理 9 1.3.2 逻辑结构 10 1.3.3 表(Table) 14 1.3.4 视图(View) 18 1.3.5 索引(Index) 18 1.3.6 同义词(Synonym) 19 1.3.7 序列(Sequence) 19 1.3.8 数据库链(Database Link) 20 第2章 管理ORACLE数据库 21 2.1 基本概念 21 2.1.1 数据字典 21 2.1.2 事务管理 23 2.1.3 数据库管理员(DBA) 24 2.1.4 ORACLE的四种状态 25 2.2 SQL*Plus方式的ORACLE数据库启动和关闭 26 2.2.1 启动数据库 26 2.2.2 关闭数据库 26 2.3 svrmgrl方式的ORACLE数据库启动和关闭 28 2.3.1 启动数据库 28 2.3.2 关闭数据库 30 2.4 应用开发工具(SQL * Plus) 31 2.4.1 SQL 32 2.4.2 PL/SQL 33 2.4.3 数据库管理工具 36 2.5 ORACLE用户及权限管理 36 2.5.1 ORACLE的用户管理 37 2.5.2 ORACLE的权限管理 38 2.6 ORACLE数据库的备份与恢复 39 2.6.1 Export 转入程序 40 2.6.2 Import 转入程序 42 2.6.3 增量卸出/装入 44 第3章 ORACLE数据库的网络应用 46 3.1 SQL*Net产品介绍 46 3.2 配置客户机/服务器结构 47 3.2.1 配置listener.ora 47 3.2.2 配置tnsnames.ora文件 48 第4章 常用任务示例 51 4.1 如何恢复被误删的数据文件 51 4.2 如何杀掉吊死session 51 4.3 如何修改字符集 51 4.4 如何追加表空间 51 4.5 如何加大表的maxextents值 52 4.6 如何查询无效对象 52 4.7 怎样分析SQL语句是否用到索引 52 4.8 怎样判断是否存在回滚段竞争 53 4.9 怎样手工跟踪函数/存储过程执行情况 54 4.10 多种业务使用同一数据库如何分配回滚段 54 4.11 怎样倒出、倒入文本数据 54 4.11.1 倒出 54 4.11.2 倒入 55 4.12 如何更新当前数据库日志备份方式为archive 56 4.13 Unix环境下如何实现自动备份 56 4.13.1 设置运行环境 56 4.13.2 倒出数据 56 4.13.3 异地备份 57 4.13.4 启动备份进程 58 4.14 怎样分析ORACLE故障 59 小结 61 附录A ORACLE数据字典与视图 62 附录B 动态性能表 68 附录C SQL语言运算符与函数 70
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值