韩顺平oracle学习笔记.doc
《韩顺平oracle学习笔记.doc》由会员分享,可在线阅读,更多相关《韩顺平oracle学习笔记.doc(81页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、韩顺平oracle学习笔记第0讲:如何学习oracle一、如何学习oracleOracle目前最流行的数据库之一,功能强大,性能卓越。学习oracle需要具备一定基础:1.学习过一门编程语言(如:java ,c)2.最好学习过一门别的数据库(sql server,mysql , access)教程推荐:oracle使用教程, 深入浅出oracle记住:欲速则不达,做任何事情要遵循他的规律,循序渐进,信心很重要成为一个oracle高手过程:理解小知识点-做小练习-把小的只是点连成线-做oracle项目-形成只是面-深刻理解Oracle基础部分:oracle基础使用; oracle用户管理; or
2、acle表管理Oracle高级部分:oracle表的查询; oracle的函数; oracle数据库管理;oracle的权角色; pl/sql 编程; 索引,约束和事物。期望目标:1 学会安装、启动、卸载oracle2 使用sql *plus工具3 掌握oracle用户管理4 学会在oracle中编写简单的select语句第1讲:基础语法内容介绍:1.为什么学习oracle2.介绍oracle及其公司的背景3.学会安装、启动、卸载oracle4.oracle开发工具5.Sql*plus的常用命令6.oracle用户管理一、主流数据库包括:微软:sql server 和 access瑞典:mys
3、ql AB公司IBM公司:DB2美国sybase公司:sybaseIBM公司:infromix美国oracle公司:oracle(目前最流行的之一)数据库分类:小型数据库中型数据库大型数据库accessmysqlsql serverinformixSybaseOracleDB2负载量在100人内,比如板,信息系信息留言统。比如在负载日访问量5000-15000负载可以处理海量数据库sybaseoracle服务和应用程序:服务-启动OracleServiceMYORA1(MYORA1是安装oracle时起的名字各有不同)和OracleOracleHome90TNSLlistener4.卸载ora
4、cle1、先关掉oralce,net stop OracleServiceORCL(ORCL是我的实例名字,换成你的),或者去我的电脑服务中关闭2、开始程序Oracle - oracle的版本号,我的是10ghomeOracle Installation Products Universal Installer 卸载oracle3、进注册表,regedit,删除选择HKEY_LOCAL_MACHINESOFTWAREORACLE下所有的key。HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices、HKEY_LOCAL_MACHINESYSTEMCu
5、rrentControlSetServicesEventlogApplication这个里面所有有oracle这个字眼的,删除4、删除c盘Program FilesOracle目录的东西以及oracle安装目录下所有的文件以及文件夹5、环境变量中删除有关oracle的classpath和path三、oracle开发工具Sqlplus是Oracle自带的工具软件,主要用于执行sql语句,pl/sql块。如何使用: 1)在开始程序oracle orachome90 application developmentsql*plus(这个是在dos下操作)2)在运行栏中输入:sqlplusw或者sqlp
6、lus即可3)在开始程序oracle orahome90Application developmentsql*plus worksheet 4)pl/sql developer 属于第三方软件,主要用于开发,测试,优化oracle pl/sql 的存储过程.如:触发器,此软件oracle不带,需要单独安装。5)oracle的企业管理器(oem oracle enterprise manager)位置在 开始程序oracleoracle oraclehome90enterprise manager console 即可启动oracle的企业管理器,是一个图形界面环境四、Sql*plus的常用命令
7、1.连接命令(1) connect 用法:conn 用户名/密码 网络服务名as sysdba/sysoper(角色登陆)当用特权用户身份连接时,必须带上as sysdba 或是 as sysoper例:conn scott/tiger;show user; 显示当前用户2.断开连接命令(2) disconnect 说明:该命令用来断开与当前数据库的连接(3)password 说明:该命令用于修改用户名的密码。如果要想修改其他用户的密码,需要用sys/system登陆。(4) show user 说明:显示当前用户名(5) exit 说明:该命令会断开与数据库的连接,同时会退出sql*plus
8、3.文件操作命令(1) start和 说明:运行sql脚本 案例:sql d:a.sql 或者 sqlstart d:a.sql(2) edit 说明:该命令可以编辑指定的sql脚本。 案例:sqledit d:a.sql(3) spool 说明:该命令可以将sql*plus屏幕上的内容输出到指定文件中去。 案例:sqlspool d:b.sql 并输入 sqlspool off4交互式命令(1) 说明:可以替代变量,而该变量在执行时,需要用户输入。如:sqlselect * from emp where job=&job 输入job是注意大小写(2) edit 说明:该命令可以编辑指定的sq
9、l脚本 案例: sqledit d:a.sql5.显示和设置环境变量概述:可以用来控制输出的各种格式,set show 如果希望永久的保存相关的设置,可以去修改 glogin.sql脚本(1)linesize 说明:设置显示行的宽度,默认是80个字符 sqlshow linesize sqlset linesize 90(2)pagesize 说明:设置每页显示的行数目,默认是14,用法和linesize一样,至于其他环境参数的使用也是大同小异 sqlset pagesize 8 实际得到的不是14/8=2页 而是:14/(8-3)=5页五Oracle用户的管理1.创建用户概述:在oracle
10、中要创建一个新的用户使用create user语句,一般是具有dba(数据库管理员)的权限才能使用。create user 用户名 identified by 密码;2.给用户修改密码概述:如果给自己修改密码可以直接使用 sqlpassword 用户名 如果给别人修改密码则需要具有dba的权限,或是拥有alter user的系统权限 sqlalter user 用户名 identified by 新密码 3.删除用户概述:一般以dba的身份去删除某个用户,如果用其他用户去删除用户则需要具有 drop user的权限。比如 drop user 用户名【cascade】注意:在删除用户时,如果要删
11、除的用户已经创建了表,就需要在删除的时候带一个参数cascade4.用户管理的综合案例概述:创建的新用户是没有任何权限的,甚至连登陆的数据库的权限都没有,需要为其指定相应的权限。给一个用户赋权限(connect登陆,dba管理员,resource建表)使用命令grant,回收权限使用命令revoke.为了给讲清楚用户管理,给大家举一个案例。案例:新建一个用户lady 并给该用户赋可登陆可创建表Sqlcreate user lady identified by lady123(密码)受登陆权限:grant connect to lady 受可创建表:grant resource to lady可
12、以多个同时授权:grant connect,resource to lady;注意授权用户级别应该为(dba以上sys/system)还可以使用PL/SQL工具创建:文件-新建-用户现在我要把scott用户里面的emp表的权限赋给lady用户但lady只能有对emp查询权限:grant select on emp to lady;(授权用户级别应该:授权本身,或者sys/system)lady 查询emp的方式:select * from scott.emp;案例:同上我想把update的权限也赋给leng grant update on emp to leng;2)我想把emp所有的(增,删
13、,改,查/insert,delete,update,select这四个一起可以用all代替) 操作权限赋给leng grant all on emp to leng;(此时登陆用户为scott) 案例2:这时我想把权限收回来怎么办呢?这时用关键字revoke(撤回)revoke select on emp from lady; 收回lady的查权限案例: 现在scott希望吧查询emp表权限通过lady用户继续给别的用户?Scott grant select on emp to lady with grant option;Leng grant select on scott.emp to 新
14、建用户案例: scott想把emp表的权限从leng用户赋权给新用户yoyo;Scott grant select on emp to leng with grant option;Leng grant select on scott.emp to yoyo;Yoyo select * from scott.emp;如果是对象权限,就加入with grant option 例:grant select on emp to xiaoming with grant option如果是系统管理权限,system 给xiaoming权限时:例:grant connect to xiaoming wit
15、h admin option如果scott把xiaoming 对emp表的查询权限回收,那么xiaohong会怎么样Scott-xiaoming-xiaohong ,结果就是xiaoming,xiaohong,都不能查询emp表 5.oracle用户的管理使用profile管理用户口令概述:profile是口令限制,资源限制的命令集合,当建立数据库时,oracle会自动建立名称为default的profile.当建立用户没有指定profile选项,那oracle就会将default分配给用户。(1)账户锁定概述:指定该用户锁定登陆时最多多可以输入密码的次数,也可以指定用户锁定的时间一般用dba
16、的身份去执行该命令 例子:指定scott这个用户最多只能尝试3次登陆使用profile管理用户口令 (1)账户锁定概述:指定该用户锁定登陆时对多可以输入密码的次数,也可以指定用户锁定的时间一般用dba的身份去执行该命令 例子:指定scott这个用户最多只能尝试3次登陆,锁定时间为2天,让我们看看怎么实现。创建profile文件(相当于创建规则)sqlcreate profile aaa1 limit(aaa1创建规则的名称)failed_login_attempts 3 password_lock_time 2;(设置登陆的次数为3次及锁定时间为:2天)结果:create profile aa
17、a1 limit failed_login_attempts 3 password_lock_time 2;Sqlalter user leng profile aaa12)给账户(用户)解锁sql alter user leng account unlock;(3)终止口令为了让用户定期修改密码可以使用终止口令的指令来完成同样这个命令也需要dba身份来操作。例子:给前面创建的用户lady创建一个profile文件,要求该用户每隔10天要修改自家的登陆密码,宽限期为2天。看看怎么做。sql create profile myprofile limit password_life_time 10
18、 password_grace_time 2;sql alter user leng profile myprofile;sql alter user leng account unlock;6口令历史概述:如果希望用户在修改密码时,不能使用以前使用过的密码,可使用口令历史,这样oralce就会将口令修改的信息存放到数据字典中,这样当用户修改密码时,oracle就会对新旧密码进行比较,当发现新旧密码一样时,就提示用户重新输入密码。例子: 1)建立profile sqlcreate profile password_history limit password_life_time 10 paaw
19、ord_grace_time 2 password_reuse_time 10; create profile /创建的文件名。 Password_life_time/使用期为10天 passwrod_grace_time/宽限期为两天 password_reuse_time/指定口令可重用时间即10天后就可以重用: 修改密码在10天内不能与旧密码一样,10天就可以重用 2)分配给某个用户。删除profile概述:当不需要某个profile文件时,可以删除该文件。sqldrop profile password_history 【cascade】第2讲:表内容介绍:1、 oracle的表的管理
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 顺平 oracle 学习 笔记
限制150内