ERP一部推送 | Oracle优化技术分享

  • 2021-05-04
  • Admin

原标题:ERP一部推送 | Oracle优化技术分享

看到图片中酷酷的小哥哥们了吗?他们是来自中ERP一部的许斌哲,有颜有才的他今天为我们带来的技术分享是关于 Oracle优化方面的,欢迎感兴趣的小伙伴一起交流哦!

29fc0864e0cedbb5840a487b2f550044.png

大家好!以下内容为个人工作中积累的常见oracle的技术点:

创建一个和a表一样的空表----create table newtable as select * from a where 1=2;

创建一个和a表一样的表-----create table newtable as select * from a;

创建一个表---主键约束

CREATETABLE stu(

sid CHAR(6) PRIMARY KEY,

sname VARCHAR(20),

age INT,

gender VARCHAR(10)

);

创建一个表---主键自增长

CREATE TABLE stu(

sid INT PRIMARY KEY AUTO_INCREMENT,

sname VARCHAR(20),

age INT,

gender VARCHAR(10)

);

----非空约束

CREATE TABLE stu(

sid INT PRIMARY KEY AUTO_INCREMENT,

sname VARCHAR(10) NOT NULL,

age INT,

gender VARCHAR(10)

);

------------唯一约束 类似主键

CREATE TABLE tab_ab(

sidINT PRIMARY KEY AUTO_INCREMENT,

snameVARCHAR(10) UNIQUE

);

------------指定外键约束

CREATE TABLE t_section(

sid INTPRIMARY KEY AUTO_INCREMENT,

sname VARCHAR(30),

u_id INT,

CONSTRAINT t_user FOREIGN KEY(u_id) REFERENCES t_user(uid)

);

------授权语句

grant connect ,resource to user1; ---授予用户权限

grant connect, resource to user1 with admin option; //可以传递所获权限。

grant select, update on product to user02 with grant option;

grant create any table,create procedure to role1;

grant role1 to user1;

grant select on table1 to user1;

grant select any table to user1;

给用户精确赋予权限

GRANT CREATE USER,DROP USER,ALTER USER ,CREATE ANY VIEW ,

DROP ANY VIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE,

DBA,CONNECT,RESOURCE,CREATE SESSION TO 用户名字

----- 回收权限

Revoke connect, resource from user50;

Revoke select, update on product from user02;

----插入

insert into newTable select * from oldTable;

insert into Table1(Table1.c1,Table1.c2) select Table2.c1,Table2.c2 from Table2.

----数据库完全导出

exp system/manager@TEST file=d:daochu.dmp full=y

将数据库中system用户与sys用户的表导出

exp system/manager@TEST file=d:daochu.dmp owner=(system,sys)

将数据库中的表inner_notify、notify_staff_relat导出

exp aichannel/aichannel@TESTDB2 file= d:datanewsmgnt.dmp tables=(inner_notify,notify_staff_relat)

将数据库中的表table1中的字段filed1以"00"打头的数据导出

exp system/manager@TEST file=d:daochu.dmp tables=(table1) query="""where filed1 like '00%'""" ---注意 双引号 不能少。

在上面的命令加上 compress=y 来实现压缩。

imp aichannel/aichannel@HUST full=y file=d:datanewsmgnt.dmp ignore=y

上面可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进行导入。

在后面加上 ignore=y 就可以了。

将d:daochu.dmp中的表table1 导入

imp system/manager@TEST file=d:daochu.dmp tables=(table1)

------测试数据库是否可以连接

tnsping orcl

查看用户表空间使用情况

select

b.file_id 文件ID号,

b.tablespace_name 表空间名,

b.bytes/1024/1024||'M'字节数,

(b.bytes-sum(nvl(a.bytes,0)))/1024/1024||'M' 已使用,

sum(nvl(a.bytes,0))/1024/1024||'M' 剩余空间,

100 - sum(nvl(a.bytes,0))/(b.bytes)*100 占用百分比

from dba_free_space a,dba_data_files b

where a.file_id=b.file_id

group by b.tablespace_name,b.file_id,b.bytes

order by b.file_id;

查看临时表空间 (dba_temp_files视图)(v_$tempfile视图)

select tablespace_name,file_name,bytes/1024/1024 file_size,autoextensible from dba_temp_files;

select status,enabled, name, bytes/1024/1024 file_size from v$tempfile;--sys用户查看

查看空间地址

select file_name , tablespace_name from dba_data_files;

查看表空间是否为自动增长

select tablespace_name,file_name,autoextensible from dba_data_files where tablespace_name = 'USERS';

将空间设置为自动增长

alter database datafile '/home/oracle/ts01.dbf' autoextend on next 5m maxsize unlimited;

将临时数据文件设为自动扩展:

alter database tempfile ‘/u01/app/oracle/oradata/orcl/temp01.dbf’ autoextend on next 5m maxsize unlimited;

增大临时文件大小:

alter database tempfile ‘/u01/app/oracle/oradata/orcl/temp01.dbf’ resize 100m;

增加文件大小

alter database datafile 'oracleoradataanita_2008.dbf' resize 4000m。

创建临时表空间

SQL> create temporary tablespace test1temp

tempfile '/home/u01/app/oracle/oradata/ytzx/test1temp01.dbf'

size 10240m

autoextend on next 1024m

maxsize 20480m

extent management local ;

创建数据表空间

create tablespace test1

logging

datafile '/home/u01/app/oracle/oradata/ytzx/test1.dbf'

size 10240M --50-100G

autoextend on next 2000M

maxsize unlimited

extent management local autoallocate

segment space management auto ;

同一空间新增存储文件

ALTER TABLESPACE 表空间名

ADD DATAFILE '数据文件路径'

SIZE 500M

AUTOEXTEND

ON NEXT 1M

MAXSIZE UNLIMITED;

为用户重新指定表空间 (设置为自动增长)

alter user username default tablespace userspace;

da9a5fb789f6ab0c36a11dbdf1802474.png

欢迎 关注瑞友科技中国事业部微信公众号~我们将为大家送上有趣、有料、有温度、有态度的各类图文内容,如果你有想要分享或交流的内容欢迎随时@小编进行留言~祝工作顺利,天天开心!返回搜狐,查看更多

责任编辑:

原文:https://blog.csdn.net/weixin_42425334/article/details/116393993

联系站长

QQ:769220720