Oracle数据库转化成MySql数据库遇到的一些问题

    xiaoxiao2021-03-25  108

    1.首先将oracle数据库转化成MySql数据库,可以使用    Navicat工具来进行转换

       具体的步骤:

            (1)  工具  ----->数据传输------>选择源数据库、模式(就是数据库的用户,选择之后就能将这个用户下的表显示出来)、选择要导出的表

                                ------>选择目标数据库-------->点击开始      进度在下面显示      成功后显示导入成功。。。。。。  

            (2)  在导入数据和表时,我遇到的一些问题:

                                         (1) Navicat连接Oracle数据库时,连接不上报错,报ORA-12737: Instant Client Light: unsupported server character set CHS16GBK

                                              解决方案:找到oralce数据库中的oci.dll   orannzsbb11.dll   oraocci11.dll   这三个文件,将Navicat中  工具——>选项----->OC里面的这三个文件替换成

                                                           Oracle数据库的这三个文件,之后重新启动Navicat即可(Oracle数据的三个文件的存放位置:D:\app\yangruidong\product\11.1.0\db_1\BIN)

                                         (2) 用navicat数据传输时报 MySQL server has gone away With statement

                                               解决方案:找到目标数据库(MySql数据库),工具 ----->服务器监控  ------>选择MySQL数据库  ----->选择  “变量”,找到  “max_allowed_packet”

                                                                 变量值设置为  999999999  即可。

    2.Oracle数据库与MySql数据库中日期的转换:

                      date_format(date,'%Y-%m-%d')    -------------->oracle中的to_char(date,'yyyy-MM-dd');

                    str_to_date(date,'%Y-%m-%d')     -------------->oracle中的to_date(date,'yyyy-MM-dd');   %Y:代表4位的年份 %y:代表2为的年份   %m:代表月, 格式为(01……12)   %c:代表月, 格式为(1……12)   %d:代表月份中的天数,格式为(00……31)   %e:代表月份中的天数, 格式为(0……31)    %H:代表小时,格式为(00……23)   %k:代表小时,格式为(0……23)   %h: 代表小时,格式为(01……12)   %I: 代表小时,格式为(01……12)   %l :代表小时,格式为(1……12)    %i: 代表分钟, 格式为(00……59)  %r:代表时间,格式为12 小时(hh:mm:ss [AP]M)   %T:代表时间,格式为24 小时(hh:mm:ss)  %S:代表秒,格式为(00……59)   %s:代表秒,格式为(00……59)      

    转载请注明原文地址: https://ju.6miu.com/read-38810.html

    最新回复(0)