Oracle数据库基本知识-原理,实例,表空间,用户,表
1.数据库原理及sql
数据库:是人们存放数据,访问数据,操作数据的存储仓库。
DB:数据库,按存储结构来组织,存储和管理的数据仓库
DBMS:数据库管理系统,管理数据库的软件
SQL:结构化查询语言(Structured Qurery Language)
SQL可分为:
数据定义语言(DDL:Data Definition Language):建立,修改,删除数据库对象。create,alter,drop
数据操纵语言(DML: Data Manipulation Language):改变数据库数据。update,insert,delete
事务控制语言(TCL:Transaction Control Language):维护数据的一致性。commit,rollback,savepoint(设置保存点,使事物回退到指定的保存点)
数据查询语言(DQL:Data Query Language):查询所需要的数据 。select
数据控制语言(DCL: Data Control Language): 执行权限的授予和收回操作,创建用户等,grant(授予),revoke(收回),create user。不需事物操作,
自动提交
2.数据库实例(instance)
建立数据库!=建立实例
instance是操作系统中一系列进程以及为这些进程所分配的内存块(即访问Oracle数据库的通道)。
一个实例只能打开一个数据库,一个数据库能被多个实例打开。访问Oracle数据库其实就是访问数据库的实例,有时候还需要先开启实例
实例名就是响应某个数据库操作的数据库管理系统的名字;sid是Oracle实例的一个标识
当配置数据库主机连接串得时候,需要指定实例名:
jdbc:oracle:thin:@localhost:1521:orcltest(orcltest就为数据库实例名)
查询当前数据库得实例名:
select instance_name from v$instance;
查看当前数据库实例信息:
show parameter instance_name;
注意:一个数据库可以有多个实例,在做数据库集群得时候可以用到,或者不同得项目用不同的数据库实例也可以
3.表空间
Oracle数据库是通过表空间来存储物理表的,表空间是数据库的逻辑划分,隶属数据库实例的下面。
一个数据库实例可以又N个表空间,一个表空间下可以又N个表。所以有了实例就可以创建表空间了。
创建表空间:
create tablespace OracleTest logging datafile 'C:\oracle\product\10.2.0\oradata\ORCLTEST\OracleTest.dbf' size 32m autoextend on next 32m maxsize2048m extent management local;
其中:
表空间名:OracleTest
建立表空间的位置为:C:\oracle\product\10.2.0\oradata\ORCLTEST\OracleTest.dbf
大小:32M,空间可以自动扩充,每次扩充的大小为32M,最大为2048M
查询表空间名:
select tablespace_name from dba_data_files group by tablespace_name;
查询表空间的大小:
select tablespace_name,count(*),sum(blocks),sum(bytes)/1024/1024 from dba_data_filesgroup by tablespace_name;
查询表空间是否自动扩充:
select file_name,autoextensible,increment_by from dba_data_files;
如果表空间中有表的话可以查看:
select tablespace_name,table_name from dba_tables where tablespace_name='ORACLETEST';
4.用户
一个Oracle数据库装好后,建立数据库实例,创建了表空间,为用户指定表空间,最后才是创建物理表
创建用户为指定的表空间:
Create user testuser identified by test default tablespace OracleTest;
用户:testuser
密码:test
表空间:OracleTest
一个表空间可以授予多个用户,并且可以给不同的用户分配对表空间不同等级的操作权限
给testuser用户授予权限:
grant connect to testuser;
grant resource to testuser;
grant dba to testuser;
登录后可以查询当前用户:
show user;
查看数据库的所有用户:
select * from dba_user;
5.表
数据库实例,表空间,用户都有了之后就可以在自己的用户所属的表空间下创建表了。
查看表所属的表空间:
select table_name,tablespace_name from all_tables where table_name='t_student';
查看表结构:
desc t_student;
6.总结
关于Oracle的使用,首先安装oracle数据库软件、然后创建数据库实例、接下来创建表空间、
再往下给表空间创建用户并分配权限、然后创建表、最后测试,其中创建表空间和创建用户这两个顺序可以颠倒的。
相关文章
- Oracle Database 11.2.0.4.0 已在 中标麒麟Linux x86-64 NeoKylin Linux Advanced Server 6 上通过认证
- C#实现多级子目录Zip压缩解压实例 NET4.6下的UTC时间转换 [译]ASP.NET Core Web API 中使用Oracle数据库和Dapper看这篇就够了 asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程 asp.net core异步进行新增操作并且需要判断某些字段是否重复的三种解决方案 .NET Core开发日志
- Oracle 远程访问配置 在 Windows Forms 和 WPF 应用中使用 FontAwesome 图标 C#反序列化XML异常:在 XML文档(0, 0)中有一个错误“缺少根元素” C#[Win32&WinCE&WM]应用程序只能运行一个实例:MutexHelper Decimal类型截取保留N位小数向上取, Decimal类型截取保留N位小数并且不进行四舍五入操作
- Oracle重置过期的密码
- Oracle官方并发教程之锁对象
- Oracle数据库备份恢复的概念:错误类型、实例恢复方法等
- Oracle 用户密码过期及修改密码有效期
- PLSQL 连接不上64位ORACLE数据库解决办法
- oracle用>=替代>
- oracle使用profile管理用户口令
- 转 Oracle 11g Rman – 08317错误
- 时移云易:Oracle Database 12.2发布延至下半年或因云超售
- Oracle初学者入门指南-什么是 Metalink 或 MOS ?
- Oracle SQL Loader切身实例
- oracle存储过程实例
- oracle事务处理及实例演示jdbc操作批量删除