Oracle数据库的安装及使用教程
本教程主要根据慕课网视频:Oracle数据库开发必备利器之SQL基础 整理
一、Oracle数据库的下载
下载地址:https://www.oracle.com/index.html
(1)
不建议选择此页面的数据库客户端界面下载Oracle的Client,因为与数据库版本匹配一致的Client可能没有(主要是oracle11.2.0.1.0的客户端没有,所以想下载客户端请到1.2)
选择11g,点击进入选择数据库页面,注意选择下载的数据库版本
二、Oracle数据库的安装
参考文章:
(1)Oracle11g安装教程_Qxw1012的博客-CSDN博客_oracle下载安装教程
(2)推荐:Oracle 11 安装教程(桌面类) - 追梦滴小蜗牛 - 博客园
注意:Database Control URL是:https://localhost:1158/em (是https,不是http)
普通管理员:system,密码:设置的口令
超级管理员:用户名:sys,密码:设置的口令
三、PL/SQL的下载、安装、配置
本次使用的是PL/SQL的解压版,无需安装。
PL/SQL解压后,找到plsqldev.exe双击打开,当显示登陆的时候,点击cancel,进入到PL/SQL界面后
然后配置与数据库版本一致的oci.dll,这里的Oracle Home和OCI Library都是可以手动输入的,所以手动输入oci的所在目录,然后点击OK完成配置。
重新启动PL/SQL,然后在登录界面输入
(1)username:用户名
(2)Password:口令
(3)Database:数据库地址,如果PL/SQL和Oracle在同一台电脑上,则不需要输入地址,只输入orcl即可;如果PL/SQL和Oracle不在同一台电脑上,则要加上Oracle所在电脑的IP地址。
(4)Connect as:以什么权限连接,如果是普通用户,Normal;一般默认即可。
用户名和口令,数据库,以什么权限连接
四、Oracle数据库的操作
4.1查看当前登录用户:
show user;
4.2查看表结构:
desc dba_users;
4.3启用锁定的用户:
alter user username(用户名) account unlock;
4.4表空间:
4.4.1表空间概述:
(1)理解表空间:
- 表空间与数据库:表空间实际上是数据库逻辑上的存储空间,可以理解为在数据库中开辟一片空间用来存储数据。所以一个数据库可以有多个表空间来构成。Oracle的优化也是通过表空间来实现的。
- 表空间与数据文件:表空间是由一个或多个数据文件来构成的,数据文件的大小和位置由用户来决定。我们往Oracle里存储的数据实际上是存储到表空间下的数据文件中的。
(2)表空间分类:
- 永久表空间:用于存储需要永久存储的一些对象,比如:表、视图、存储过程等。
- 临时表空间:用于存储数据库操作当中,中间执行的过程,执行完成之后就会被释放掉,它不会进行永久性的保存。
- UNDO表空间:用于保存事务所修改数据的旧址(即修改之前的旧数据,便于回滚)。
4.4.2查看用户的表空间:
(1)dba_tablespaces、user_tablespaces数据表:
- dba_tablespaces:系统管理员级查看的数据表。
//查看数据结构
DESC dba_tablespaces;
select tablespace_name[,status] from dba_tablespaces;
- user_tablespaces:普通用户登录查看的数据表。
select tablespace_name from user_tablespaces;
(2)dba_users、user_users数据表:用来查询用户。
(3)设置用户的默认或临时表空间:
ALTER USER username DEFAULT|TEMPORARY TABLESPACE tablespace_name;
注意:普通用户没有这个权限,管理员可以修改,也可以为普通用户设置。
4.4.3创建、修改、删除表空间:
(1)创建表空间:
//永久表空间
CREATE TABLESPACE tablespace_name DATAFILE 'xx.dbf' SIZE xx;
//临时表空间
CREATE TEMPORARY TABLESPACE tablespace_name TEMPFILE 'xx.dbf' SIZE xx;
DATAFILE:设置表空间数据文件,xx.dbf是数据文件的名称,最好设置数据文件的所在路径。
SIZE:设置数据文件大小。
//创建永久表空间,数据文件大小可扩展
CREATE TABLESPACE tablespace_name DATAFILE 'xx.dbf' SIZE 10M autoextend on next 50M maxsize unlimited;
追加:
创建用户 随便分配表空间
CREATE USER username IDENTIFIED BY "123456" DEFAULT TABLESPACE TEST profile DEFAULT ACCOUNT UNLOCK;
给用户最高权限
GRANT dba TO username;
查询目录:
SELECT * FROM dba_directories;
创建数据导入/出存储地址
CREATE DIRECTORY mydatas AS 'D:\oracleData';
导入数据:
impdp 用户名/密码@orcl transform=segment_attributes:n directory=mydatas[导入文件所在路径] dumpfile=XX.DMP remap_tablespace=TEST:XX remap_schema=ptuser:ptuser7 logfile=ims20171123.log
注意:transform=segment_attributes:n忽略expdp导出时附带的相关表空间和存储子句约束
注意:remap_schema 前者是导出用户后者是导入用户
注意:remap_tablespace=a:b 前者是导出表空间,后者是导入
导出数据:
expdp 用户名/密码6@orcl schemas=ptuser3 directory=mydatas dumpfile=xx.dmp version=11.2.0.1.0
注意Oracle数据库导入导出时需要保持数据库版本一致,所以在导出数据时,version必须设置对。
(2)查看永久表空间所在路径:
- 查看数据文件所在数据表结构,在命令行中使用sqlplus使用此命令
DESC dba_data_files;
- 查看数据文件及表空间信息
SELECT file_name,tablespace_name FROM dba_data_files;
(3)查看临时表空间所在路径:
- 查看数据文件所在数据表结构,在命令行中使用sqlplus使用此命令
DESC dba_temp_files;
(4)修改表空间(永久表空间):
- 修改表空间的状态
①设置在线或离线状态:(默认在线)
//在线
ALTER TABLESPACE tablespace_name ONLINE;
//离线
ALTER TABLESPACE tablespace_name OFFLINE;
②查看表空间的状态:
请看4.4.2查看用户的表空间节内容;
③设置只读或可读写状态:(默认可读写状态)
//只读
ALTER TABLESPACE tablespace_name READ ONLY;
//可读写
ALTER TABLESPACE tablespace_name READ WRITE;
注意:只有表空间是在线状态才能修改此处的状态。
- 修改表空间数据文件
①查看表空间的数据文件:
在 dba_data_files 中可查看
②增加数据文件:
ALTER TABLESPACE tablespace_name ADD DATAFILE 'xx.dbf' SIZE xx;
③删除数据文件:
ALTER TABLESPACE tablespace_name DROP DATAFILE 'xx.dbf';
注意:不能删除默认的数据文件,即表空间中只有一个数据文件时无法删除。
(5)删除表空间:
//删除表空间,不删除表空间里的数据文件
DROP TABLESPACE tablespace_name;
//删除表空间,同时删除表空间里的数据文件
DROP TABLESPACE tablespace_name INCLUDING CONTENTS;
4.5数据表
4.5.1数据表概念
(1)数据表是存储在Oracle数据库的表空间中
(2)表是数据的基本存储单位
(3)二维结构:由行和列组成
4.5.2数据表中的数据类型
(1)字符型
CHAR(n):固定长度的类型,n最大为2000;
NCHAR(n):固定长度的类型,n最大为1000,按照Unicode格式来存放数据【常用来存储汉字】;
VARCHAR2(n):可变长度的类型,n最大为4000;
NVARCHAR2(n):可变长度的类型, n最大为2000;
(2)数值型
NUMBR(p,s):p代表几位有效数字,s代表保留几位小数;
FLOAT(n):保存二进制数据;
(3)日期型
DATE:表示范围—》公元前4712年1月1号到公元9999年12月31号,可以精确到秒;(常用)
TIMESTAMP:时间戳,可以精确到小数秒,比DATE更精确。
(4)其他类型
BLOB:存放二进制的数据,二进制数据一般指的是文件数据,包括音频、视频、文件等。
CLOB:以字符串形式存放二进制的数据;
4.5.3管理数据表
(1)创建表
同MYSQL的语法,略
(2)修改表
同MYSQL的语法,略
(3)删除表中数据
//删除表中全部数据
TRUNCATE table_name;
(4)删除表
//删除表中全部数据
DROP TABLE table_name;
五、其他SQL
5.1删除数据表的步骤:
5.1.1把已经禁止的外键打开:
SELECT 'ALTER TABLE ' || table_name || ' enable CONSTRAINT ' || constraint_name || ';' FROM user_constraints where CONSTRAINT_TYPE = 'R';
5.1.2拼接删除语句
SELECT 'DROP table '|| table_name || ';' FROM USER_TABLES ORDER BY TABLE_NAME;
5.1.3复制查询出的删除语句并执行
更多推荐
所有评论(0)