

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 排查 AWS Schema Conversion Tool 问题
<a name="CHAP_Troubleshooting"></a>

您可以在下面找到有关解决 AWS Schema Conversion Tool (AWS SCT) 方面的问题的信息。

## 无法从 Oracle 源数据库加载对象
<a name="CHAP_Troubleshooting.OracleLoad"></a>

当您尝试从 Oracle 数据库加载架构时，您可能会遇到以下错误之一。

```
Cannot load objects tree.
```

```
ORA-00942: table or view does not exist
```

引发这些错误的原因是，您用其 ID 连接到 Oracle 数据库的用户没有 AWS SCT 所要求的读取架构的足够权限。

您可以向用户授予 `select_catalog_role` 权限以及访问数据库中任何词典的权限，从而解决此问题。这些权限提供对 AWS SCT 所需的视图和系统表的只读访问。以下示例会创建一个名为 `min_privs` 的用户 ID，并向持有此 ID 的用户授予转换 Oracle 源数据库中架构所需的最小权限。

```
create user min_privs identified by min_privs;
grant connect to min_privs;
grant select_catalog_role to min_privs;  
grant select any dictionary to min_privs;
```

## 评估报告警告消息
<a name="CHAP_Troubleshooting.WarningMessage"></a>

要评估转换为其他数据库引擎的复杂性，AWS SCT 需要访问源数据库中的对象。如果在扫描过程中 AWS SCT 遇到问题而无法进行评估，则会发出警告消息。此消息表示总体转换百分比降低。以下是在扫描过程中 AWS SCT 可能遇到问题的原因：
+ 您的数据库用户没有对所有需要的对象的访问权限。有关 AWS SCT 所需的安全权限和数据库权限的更多信息，请参阅本指南中相应的源数据库部分 [使用连接到源数据库 AWS Schema Conversion Tool](CHAP_Source.md)。
+ 数据库中不再存在架构中引用的对象。为了帮助解决问题，您可以使用 SYSDBA 权限进行连接并检查数据库中是否存在该对象。
+ SCT 正在尝试评估加密的对象。