新买了服务器,要求把原来数据库导入新的服务器上,安装Oracle12c,步骤网上有好多。这里把后续部署环节出的问题记录一下:
1、telnet 1521端口不通,二分法纠错,先看oracle是否启动正常,再分两步,一边看网关、外部路由,一边看内部防火墙是否关闭
2、如果数据库没有启动,且sysdba账号无法登录提示密码错误,可以试着将$ORACLE_HOME/network/admin/sqlnet.ora文件重命名,此时再通过sqlplus 登录sysdba时系统会使用sqlnet.ora默认配置,登录成功启动数据库。后续再探索问题出在哪里。
3、导入数据文件时,连接串应该使用的是本地客户端的监听服务名。服务器上可以查看$ORACLE_HOME/network/admin/tnsname.ora文件,获取服务名
即:impdp xxxx/xxxx@服务名 xxxxxx
服务名 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.xxx.xxx.xxx)(PORT = 1521))
(CONNECT_DATA =
(SID = 实例名) or (SERVICE_NAME = 数据库名)
(SERVER = DEDICATED)
)
)
4、dmp文件导入时,如果从高版本数据库导入低版本时,需要在exp/expdp的时候指定version参数为导入的目标数据库版本
5、dmp文件导入时,如果源数据与目标数据表空间或用户名不同,需要在imp/impdp指令增加对应参数进行映射