Oracle笔记

来源:互联网 发布:越狱用户抹掉数据cydia 编辑:程序博客网 时间:2024/06/02 04:36
1. 安装Oracle数据库
* 安装前关闭防火墙和断开网络
- 全局数据库名 mldn | SID: mldn
- 构选创建带样本方案的数据库
- 所有的帐户都使用同一个口令 oracleadmin
- 安装之后往出现的选项都不要选择确定
- 使用Oracle数据库,主要使用以下四个用户
以下用户用户密码构选取消再设置密码
用户/密码
- 超级管理员 sys/change_on_install
- 普通管事员 system/manager
- 普通用户 scott/tiger 默认是锁定
- 大数据用户 sh/sh
- 确定
- 退出
- 安装完成之后自动在Windows之中为用户注册若干个服务
我的电脑->管理->服务


* 因为这种服务默认是自动启动的,而这样如果配置为默认启动,则有可能造成启动的的速度缓慢,所以建议将都修改为手工启动方式。


* 以下两个服务是最重要的:
- 监听服务:OracleOmDb10g_homeITNSListener
- 以后如果有程序要操作数据库,或者是一些远程的客户端要连接数据库则必须启动此服务
- 数据库的实例服务:OracleServiceMLDN
- 保存数据库的具体信息的服务,每一个数据库有一个数据库的实例(服务)
- 命名规则:OracleServiceXXX,其中XXX是配置的数据库名称(严格来讲是SID名称)


2.卸载Oracle 
- 直接运行卸载程序;
- 删除硬盘上的残留文件,如果删除不掉先进入到安全模式下删除;
- 同时删除注册表中的所有与Oracle有关的配置项/
如果没有正常的安装成功,除了操作系统的问题之外,直接采用以上的第二和第三两个步骤就可以完成卸载。


3.配置Oracle数据库
监听问题
监听服务是Oracle数据库中使用最主要的服务,但是这个服务经常会出现错误,包括以后在工作之中这个服务也会出现错误,所以下面给出两种常见的错误解决方案:

错误一:注册表使用了优化软件被删除了相关项
对于每一个系统服务实际上都会在注册表之中有所保存;

监听服务注册项:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\OracleOraDb10g_home1TNSListener


里面有一个“ImagePath”选项,这个选项有可能会在使用优化软件的时候被自动删除。如果被删除的话,则应该按照下面的方式建立一个新的项,并且写上相应的内容。
内容:E:\oracle\product\10.1.0\db_1\BIN\TNSLSNR 

错误二:网络环境发生改变
在Oracle 10g里面,如果网络的环境出现了改变之后,有可能原始配置的网络就无法正常的工作,此时必须手工进行网络配置的修改。


网络环境的改变最多的就是指电脑名称的变量。


[我的电脑]->[属性]->[计算机名]->[更改主机名称]
将新的主机名称修改为"teacher",这样一来实际上计算机的网络名称就已经发生了变化,如果在Oracle 11g之中,这人问题可以帮助用户自动的进行重新配置,但是在Oracle 10g或者说更早的版本之中,这个问题只能手工解决。

解决方案:
1. product/10.1.0/db_1/NETWORK/ADMIN/listener.ora
2. product/10.1.0/db_1/NETWORK/ADMIN/tnssnames.ora
host的值改成已修改后的计算机名



之后再次重启望到监听服务,但是以后如果使用程序连接Oracle 10g的话,则以上的配置有可能还是不能够正常的访问数据库,此时可以进入到第二操作,进行数据库名称的注册。


NetManager进行网络配置:
监听程序->数据库服务->添加数据库(全局数据库名:mldn SID:MLDN)->保存配置


在Oracle之中也提供了一个监听状态的检查命令:db_1/bin/LSNRCTL.EXE


4. sqlplus命令
两种形式:sqlplus.exe和sqlplusw.exe


sqlplusw
- 设置每行显示的记录长度:SET LINESIZE 300;
- 设置每页显示的记录的长度:SET PAGESIZE 30;
- 方向键只能控制屏幕的移动
ed和@指令
> ed a
> @a
> @d:\demo.txt  如果是文件后缀是.sql的话不用输入全名,即@d:\demo @:demo


查看与用户有关的表; select * from tab;
显示当前用户表:show user;
切换用户命令:conn 用户名/密码 [AS SYSDBA] 超级管理员登录

CONN sys/change_on_install AS SYSDBA; 

但是使用sys连接之后,则无法直接查询emp表数据


对于每一张表,都有其属于的用户,所以一张表的完整名称是“用户名.表名称”或者说是“模式名.,所以不同的用户要想访问其他用户的表,则应该加上用户名,即:现在的访问名称:
SELECT * FROM sccot.emp;


超级管理员登录的话,可以通过命令手工的控制数据库实例的打开和关闭。


- 关闭数据库实例: SHUWDOWN immediate;


关闭之后用户无法直接连接sqlplus命令,此时可以先用“/nolog”登录,之后使用管事员登录。
SQL> conn sys/change_on_install as sysdba;
SQL> startup # 数据库启动


sqlplus命令窗口也可以调用本机的操作系统命令,使用'host'作为前缀。
SQL> host copy d:\demo.sql d:\hello.txt
原创粉丝点击