oracle 的表空间就是存放数据的磁盘文件,数据库是存放在表空间的。表空间分临时表空间和表空间,创建数据库的时候会指定表空间和临时表空间,可选择
好久没有用Oracle了,希望没说错
这个数据的多少和表空间的选择和你的数据量多少是没有太大关系的,需要统计你的数据量的大小。如果数据量很大,像你说的31002000万15k需要估算一下他是有多少G?这样才好设计表空间的分配。从10g开始有表空间支持一个大的数据文件,由多个文件组成肯定没有一个文件好管理,但是如果出问题了一个大数据文件损坏肯定造成的损失很大。这就是易维护性和安全性的取舍。不知道你们磁盘阵列是怎么做的如果没有raid1,数据又很重要的话,也许添加多个数据文件。但是多个数据文件的添加,每个数据文件的大小又受到OS的影响,这个和DB_block_size的大小又有关系,具体算法我不细讲,结论是单个数据文件最多32G。所以这个时候就看你的数据量大小了,你只说量,但是也许有lob字段之类的我无法估算大小,所以这个你自己算一下,如果需要的数据文件过多的话,你想方便维护也是可以使用大数据文件。sql如下:
SQL> create bigfile tablespace giapblob ----------------表空间名字
2 datafile 'H:\ypx\pic02dbf' ----------------数据文件名字路径
3 size 204800M ----------------200G的bigfile
4 autoextend on next 1024M -----------------扩展自动1G
5 maxsize unlimited -----------------不限最大
6 extent management local autoallocate; ----------------自动管理分配区间
其中上述只是从管理方便的角度考虑一个表空间的处理方法,一般单个表空间最大限制是1022个数据文件4M数据块DB_BLOCK_SIZE=32TB。如果数据量过大,必须采用多表空间。
另外也要考虑需求中的使用性能,如果表数据量过大,比如你们每天2000万,那有没有历史表数据?这个如果是OLAP还好说,OLTP可能要做分区表等等一系列的性能考虑,情况不同选择不同。
Oracle的数据库结构:
实例(数据库)
用户(schema)
表、视图、存储过程等。
表空间,建立在1个或多个数据文件上;
表 存储在表空间中。
可以通过alter方法给用户指定表空间的,之后创建表不需要指定,会进行默认的表空间存储的。
sql:ALTER USER 用户名 IDENTIFIED BY 口令 DEFAULT TABLESPACE 表空间;
解释:上述语句就是给“用户名”用户指定了默认的表空间“表空间”,之后所有的表都会默认进行存储。
备注:一般表空间都是设置默认自动扩展的,所以一般不用担心存储超出最大存储的问题的。
Oracle的数据存储由块,区,段,表空间组成
最小单位是块,多个连续的块组成区,多个区组成段,多个段组成表空间
什么是段,可以这么理解,对象就是段,段分为表段(就是我们说的表),索引段(就是我们说的索引)等等。这些表段,索引段在一起组成了表空间。
通俗的就这样理解,就可以了
查看的方法和详细的 *** 作步骤如下:
1、首先,因为oracle在Linux系统下运行,所以必须连接到Linux系统,如下图所示,然后进入下一步。
2、其次,完成上述步骤后,连接成功,进入Oracle控制台。
输入命令“sqlplus / as sysdba”,如下图所示,然后进入下一步。
3、接着,完成上述步骤后,在sql命令行上,输入以下代码,如下图所示,然后进入下一步。
4、最后,完成上述步骤后,就可以查看相应的结果了,如下图所示。这样,问题就解决了。
以上就是关于oracle中,创建的表放在表空间中,表空间和数据库是什么关系全部的内容,包括:oracle中,创建的表放在表空间中,表空间和数据库是什么关系、如何在oracle数据库中设计表空间、oracle中用户,表,表空间,三者的关系是什么等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)