

 Amazon Redshift 將不再支援從修補程式 198 開始建立新的 Python UDFs。現有 Python UDF 將繼續正常運作至 2026 年 6 月 30 日。如需詳細資訊，請參閱[部落格文章](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/)。

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# COPY JOB
<a name="r_COPY-JOB"></a>

如需使用此命令的相關資訊，請參閱 [建立 S3 事件整合，以自動從 Amazon S3 儲存貯體複製檔案](loading-data-copy-job.md)。

管理將資料載入資料表的 COPY 命令。COPY JOB 命令是 COPY 命令的擴充功能，可自動從 Amazon S3 儲存貯體載入資料。當您建立 COPY 任務時，Amazon Redshift 會偵測何時在指定路徑中建立新的 Amazon S3 檔案，然後自動載入這些檔案，而無需您介入。載入資料時，會使用原始 COPY 命令中使用的相同參數。Amazon Redshift 會追蹤載入的檔案 (根據檔案名稱)，以確認檔案只載入一次。

**注意**  
如需 COPY 命令的相關資訊，包括用法、參數和許可，請參閱[COPY](r_COPY.md)。

## 所需的許可
<a name="r_COPY-JOB-privileges"></a>

若要使用 COPY JOB 命令，除了使用 COPY 的所有必要許可之外，您還必須擁有下列其中一項許可：
+ 超級使用者
+  下列全部：
  +  您要執行 COPY 之資料庫中 COPY JOBS 的相關 CREATE、ALTER 或 DROP 限定範圍許可。
  +  您要執行 COPY 之結構描述的 USAGE 許可，或您要執行 COPY 之資料庫中結構描述的 USAGE 限定範圍許可。
  +  您要執行 COPY 之資料表的 INSERT 許可，或您要執行 COPY 之結構描述或資料庫中資料表的 INSERT 限定範圍許可。

使用 COPY 命令指定的 IAM 角色必須具有存取要載入之資料的許可。如需詳細資訊，請參閱[COPY、UNLOAD 和 CREATE LIBRARY 的 IAM 許可](copy-usage_notes-access-permissions.md#copy-usage_notes-iam-permissions)。

## 語法
<a name="r_COPY-JOB-syntax"></a>

建立複製任務。COPY 命令的參數會與複製任務一起儲存。

您無法在交易區塊的範圍內執行 COPY JOB CREATE。

```
COPY copy-command JOB CREATE job-name
[AUTO ON | OFF]
```

變更複製任務的組態。

```
COPY JOB ALTER job-name
[AUTO ON | OFF]
```

執行複製任務。會使用儲存的 COPY 命令參數。

```
COPY JOB RUN job-name
```

列出所有複製任務。

```
COPY JOB LIST
```

顯示複製任務的詳細資訊。

```
COPY JOB SHOW job-name
```

刪除複製任務。

您無法在交易區塊的範圍內執行 COPY JOB DROP。

```
COPY JOB DROP job-name
```

## Parameters
<a name="r_COPY-JOB-parameters"></a>

*copy-command*  
將資料從 Amazon S3 載入到 Amazon Redshift 的 COPY 命令。該子句包含 COPY 參數，用於定義 Amazon S3 儲存貯體、目標資料表、IAM 角色和載入資料時使用的其他參數。支援 Amazon S3 資料載入的所有 COPY 命令參數，但以下參數除外：  
+ COPY JOB 不會將預先存在的資料夾內擷取 COPY 命令所指向的檔案。只有在 COPY JOB 建立時間戳記之後建立的檔案才會被擷取。
+ 您無法使用 MAXERROR 或 IGNOREALLERRORS 選項來指定 COPY 命令。
+ 您不能指定資訊清單檔案。COPY JOB 需要指定的 Amazon S3 位置來監控新建立的檔案。
+ 您不能指定具有存取金鑰和私密金鑰等授權類型的 COPY 命令。僅支援使用 `IAM_ROLE` 參數進行授權的 COPY 命令。如需詳細資訊，請參閱[授權參數](copy-parameters-authorization.md)。
+ COPY JOB 不支援與叢集相關聯的預設 IAM 角色。您必須在 COPY 命令中指定 `IAM_ROLE`。
如需詳細資訊，請參閱[從 Amazon S3 進行 COPY](copy-parameters-data-source-s3.md)。

*job-name*  
用來參考 COPY 任務之任務的名稱。*job-name* 不可包含連字號 (-)。

 [AUTO ON \$1 OFF]   
指出是否將 Amazon S3 資料自動載入 Amazon Redshift 資料表的子句。  
+ `ON` 時，Amazon Redshift 會監控新建立檔案的來源 Amazon S3 路徑，如果找到，則會使用任務定義中的 COPY 參數執行 COPY 命令。這是預設值。
+ `OFF` 時，Amazon Redshift 不會自動執行 COPY JOB。

## 使用須知
<a name="r_COPY-JOB-usage-notes"></a>

COPY 命令的選項直到執行時間才驗證。例如，COPY JOB 開始時，無效的 `IAM_ROLE` 或 Amazon S3 資料來源會導致執行期錯誤。

如果叢集已暫停，則不會執行 COPY JOBS。

若要查詢載入的 COPY 命令檔案和載入錯誤，請參閱 [STL\$1LOAD\$1COMMITS](r_STL_LOAD_COMMITS.md)、[STL\$1LOAD\$1ERRORS](r_STL_LOAD_ERRORS.md)、[STL\$1LOADERROR\$1DETAIL](r_STL_LOADERROR_DETAIL.md)。如需詳細資訊，請參閱[驗證資料已正確載入](verifying-that-data-loaded-correctly.md)。

零 ETL 資料庫不支援 COPY JOBS，因為它們以唯讀模式運作。

## 範例
<a name="r_COPY-JOB-examples"></a>

下列範例示範建立 COPY JOB，以從 Amazon S3 儲存貯體載入資料。

```
COPY public.target_table
FROM 's3://amzn-s3-demo-bucket/staging-folder'
IAM_ROLE 'arn:aws:iam::123456789012:role/MyLoadRoleName' 
JOB CREATE my_copy_job_name
AUTO ON;
```