SELECT * FROM V$VERSION;查询源数据库版本,目标Debian需安装对应版本的Oracle Database软件。expdp/impdp工具),执行以下命令:sudo apt-get update
sudo apt-get install oracle-instantclient-basic oracle-instantclient-sqlplus oracle-instantclient-data-pump
~/.bashrc或/etc/profile,添加以下内容(替换为实际路径):export ORACLE_HOME=/usr/lib/oracle/21/client64 # 根据安装版本调整
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
export PATH=$ORACLE_HOME/bin:$PATH
执行source ~/.bashrc使配置生效。/opt/oracle/dump_dir),并在数据库中创建对应的逻辑目录并授权:-- 源数据库执行
CREATE DIRECTORY dump_dir AS '/opt/oracle/dump_dir';
GRANT READ, WRITE ON DIRECTORY dump_dir TO your_user; -- 替换为实际用户
-- 目标数据库执行(相同目录路径)
CREATE DIRECTORY dump_dir AS '/opt/oracle/dump_dir';
GRANT READ, WRITE ON DIRECTORY dump_dir TO your_user;
确保Debian系统用户对物理目录有读写权限(chmod -R 755 /opt/oracle/dump_dir)。expdp工具导出源数据库数据(示例):expdp your_user/your_password@source_db directory=dump_dir dumpfile=full_export.dmp logfile=expdp_full.log full=y
其中full=y表示全库导出,可根据需求调整为schema=schema_name(导出特定用户)或tables=table1,table2(导出特定表)。rman target /
BACKUP DATABASE FORMAT '/opt/oracle/backup/%U';
BACKUP CURRENT CONTROLFILE FORMAT '/opt/oracle/backup/controlfile.bak';
oracle用户、ORACLE_SID等)。dbca(Database Configuration Assistant)创建新的数据库实例(如orcl)。CREATE SESSION、RESOURCE、UNLIMITED TABLESPACE)。impdp工具将源数据库导出的数据导入目标数据库(示例):impdp your_user/your_password@target_db directory=dump_dir dumpfile=full_export.dmp logfile=impdp_full.log full=y
若需转换模式(如源模式为source_schema,目标模式为target_schema),可添加remap_schema=source_schema:target_schema参数。rman target /
RESTORE DATABASE;
RECOVER DATABASE;
ALTER DATABASE OPEN;
SELECT COUNT(*) FROM table_name;),可使用Oracle的utl_diff工具或自定义SQL脚本。SGA_TARGET、PGA_AGGREGATE_TARGET),重建索引(ALTER INDEX index_name REBUILD;)以提升查询性能。INCREMENTAL=Y),效率高且功能全面,是Debian迁移的首选工具。SELECT PLATFORM_NAME FROM V$DATABASE;查询),若不一致需先转换数据文件。AL32UTF8),避免乱码问题。可通过SELECT parameter, value FROM nls_database_parameters WHERE parameter = 'NLS_CHARACTERSET';查询字符集,若不一致需提前转换。LONG、LONG RAW)在不同Oracle版本中可能不兼容,需提前转换为CLOB、BLOB等现代数据类型。