{"id":4119,"date":"2025-06-08T07:52:38","date_gmt":"2025-06-08T07:52:38","guid":{"rendered":"https:\/\/w3buddy.com\/?post_type=cposts&#038;p=4119"},"modified":"2025-06-08T08:54:27","modified_gmt":"2025-06-08T08:54:27","slug":"scp-file-transfer","status":"publish","type":"cposts","link":"https:\/\/w3buddy.com\/blog\/notes\/oracle-dba-d2d-tasks\/scp-file-transfer\/","title":{"rendered":"SCP File Transfer"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">As a DBA, you often need to move <code>.dmp<\/code>, <code>.log<\/code>, <code>.ctl<\/code>, <code>.bkp<\/code>, and <code>.par<\/code> files between servers during activities like database refresh, cloning, patching, or troubleshooting.<br>Use <code>scp<\/code> (secure copy) to perform fast and secure file transfers between servers.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1. Upload File \u279c Target Server<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Run from:<\/strong> <strong>Source server<\/strong> (where the file currently exists)<br><strong>Use case:<\/strong> Send export dump, patch, or log file to target environment<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><code># Upload a file from source \u279c target\nscp \/u01\/exports\/prod.dmp oracle@target_server:\/u01\/refresh\/\n\n# If you're in the current directory of the file\nscp .\/prod.dmp oracle@target_server:\/u01\/refresh\/<\/code><\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\ud83d\udd11 <strong>Prompts for:<\/strong> <code>oracle@target_server<\/code> password<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2. Download File \u2b05 From Source Server<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Run from:<\/strong> <strong>Target server<\/strong> (where you want the file copied)<br><strong>Use case:<\/strong> Pull backup or export dump from source\/production server<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><code># Download a file from source \u279c target\nscp oracle@source_server:\/u01\/exports\/prod.dmp \/u01\/restore\/\n\n# If saving to current directory\nscp oracle@source_server:\/u01\/exports\/prod.dmp .<\/code><\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\ud83d\udd11 <strong>Prompts for:<\/strong> <code>oracle@source_server<\/code> password<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3. Copy File: Source \u279c Target (Run from Jumpbox\/3rd Host)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Run from:<\/strong> A third server (e.g., jumpbox or any server with SSH access to both source and target)<br><strong>Use case:<\/strong> Move files between two remote servers<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><code># Copy file between remote servers\nscp oracle@source_server:\/u01\/backups\/full.bkp oracle@target_server:\/u01\/restore\/<\/code><\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\ud83d\udd11 <strong>Prompts for:<\/strong> both <code>oracle@source_server<\/code> and <code>oracle@target_server<\/code> passwords<br>\ud83d\udca1 <strong>Tip:<\/strong> Use SSH key-based auth to skip repeated prompts<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">4. Upload Entire Directory \u279c Target<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Run from:<\/strong> <strong>Source server<\/strong><br><strong>Use case:<\/strong> Move full RMAN backup or log directory to another server<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><code># Upload full directory\nscp -r \/u01\/rman_backups oracle@target_server:\/u01\/restore\/\n\n# If inside \/u01 directory\nscp -r .\/rman_backups oracle@target_server:\/u01\/restore\/<\/code><\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">5. Use Custom SSH Port<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Run from:<\/strong> <strong>Source server<\/strong><br><strong>Use case:<\/strong> When target server uses a non-default SSH port (other than 22)<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><code>scp -P 2222 prod.dmp oracle@target_server:\/u01\/refresh\/<\/code><\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">\ud83d\udccc Important Notes for Oracle DBAs:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>SSH access<\/strong> must be allowed between source and target<\/li>\n\n\n\n<li>Use <code>oracle<\/code> or relevant OS user with permission on both ends<\/li>\n\n\n\n<li>Always use <strong>absolute paths<\/strong> to avoid confusion and errors<\/li>\n\n\n\n<li>Use <code>pwd<\/code> and <code>ls -l<\/code> before\/after transfer to verify locations<\/li>\n\n\n\n<li>Use <code>.<\/code> to represent current directory when you&#8217;re already inside it<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Avoid Password Prompts with SSH Keys (Highly Recommended):<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code><code># Generate SSH key (if not already done)\nssh-keygen -t rsa\n\n# Copy your public key to target server\nssh-copy-id oracle@target_server<\/code><\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\u2705 Once set up, <code>scp<\/code> will work password-less between trusted hosts<\/p>\n","protected":false},"excerpt":{"rendered":"<p>As a DBA, you often need to move .dmp, .log, .ctl, .bkp, and .par files between servers during activities like database refresh, cloning, patching, or troubleshooting.Use scp (secure copy) to perform fast and secure file transfers between servers. 1. Upload File \u279c Target Server Run from: Source server (where the file currently exists)Use case: Send [&hellip;]<\/p>\n","protected":false},"template":"","meta":{"googlesitekit_rrm_CAowu461DA:productID":""},"categories":[952,984],"class_list":["post-4119","cposts","type-cposts","status-publish","hentry","category-notes","category-oracle-dba-d2d-tasks"],"_links":{"self":[{"href":"https:\/\/w3buddy.com\/blog\/wp-json\/wp\/v2\/cposts\/4119","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/w3buddy.com\/blog\/wp-json\/wp\/v2\/cposts"}],"about":[{"href":"https:\/\/w3buddy.com\/blog\/wp-json\/wp\/v2\/types\/cposts"}],"wp:attachment":[{"href":"https:\/\/w3buddy.com\/blog\/wp-json\/wp\/v2\/media?parent=4119"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/w3buddy.com\/blog\/wp-json\/wp\/v2\/categories?post=4119"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}