oracle 19c学习(2)—导入10g数据库dmp文件

1、执行
CREATE USER c##posp IDENTIFIED BY posp;
ALTER USER c##posp QUOTA UNLIMITED ON USERS;
GRANT "CONNECT" TO c##posp;
GRANT "RESOURCE" TO c##posp;
GRANT CREATE ANY INDEX TO c##posp;
GRANT CREATE VIEW TO c##posp;
GRANT CREATE SESSION TO c##posp;
grant read,write on directory dmpdir to c##posp;

impdp c##posp/posp schemas=posp3 remap_schema=posp3:c##posp directory=dmpdir dumpfile=expdp_posp3.dmp logfile=impdp.log job_name=my_jod;

2、导入过程中提示错误
ORA-02374: conversion error loading table "C##POSP"."TBL_IPC_DFT_DSP"
ORA-12899: value too large for column IPC_DFT (actual: 266, maximum: 256)

ORA-02372: data for row: IPC_DFT : 0X'B9A4C9CCD2F8D0D0B3E5D5FDBDBBD2D7C7EBC7F32020202020'
因为字符集不一样
目标数据库字符集:al32utf8
源数据库字符集:zhs16gbk

没办法。。。

oracle 19c学习(1)—CentOS7 rpm包安装oracle19c

oracle19c相当于10g、11g后的12号版本的长期支持版,并且提供了rpm包安装,大大简化了安装过程

1、下载预安装包
wget http://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/getPackage/oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm

2、下载oracle 19c
https://www.oracle.com/database/technologies/oracle-database-software-downloads.html#19c

3、安装预安装包
yum -y localinstall /root/oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm
会自动安装oracle的依赖包

4、安装oracle
yum -y localinstall /root/oracle-database-ee-19c-1.0-1.x86_64.rpm

继续阅读oracle 19c学习(1)—CentOS7 rpm包安装oracle19c

MySQL的Query语句优化

一、Query Optimizer

1、MySQL Query Optimizer是什么
是MySQL查询语句优化器,其主要的功能就是通过计算分析系统中收集的各种统计信息,为客户端请求的Query给出他认为最优的执行计划,也就是他认为最优的数据检索方式。

2、MySQL Query Optimizer基本工作原理
MySQL的Query Tree是通过优化实现DBXP的经典数据结构和Tree构造器而生成的一个指导完成一个Query语句的请求所需要处理的工作步骤,我们可以简单的认为就是一个的数据处理流程规划,只不过是以一个Tree的数据结构存放而已。通过Query Tree我们可以很清楚的知道一个Query的完成需要经过哪些步骤的处理,每一步的数据来源在哪里,处理方式是怎样的。

当客户端向MySQL请求一条Query ,到命令解析器模块完成请求分类区别出是SELECT并转发给Query Optimizer之后,Query Optimizer首先会对整条Query进行,优化处理掉一些常量表达式的预算,直接换算成常量值。并对Query中的查询条件进行简化和转换,如去掉一些无用或者显而易见的条件,结构调整等等。然后则是分析Query中的Hint信息(如果有),看显示Hint信息是否可以完全确定该Query的执行计划。如果没有Hint或者Hint信息还不足以完全确定执行计划,则会读取所涉及对象的统计信息,根据Query进行写相应的计算分析,然后再得出最后的执行计划。

继续阅读MySQL的Query语句优化