
# RDS for PostgreSQL数据迁移过程中由于权限问题导致迁移报错
#### 问题描述
使用root用户通过DRS迁移PostgreSQL引擎数据时报错，需要更换迁移账号或对迁移账号授权，示例如下：
![](https://support.huaweicloud.com/rds-pg_faq/zh-cn_image_0000002248941985.png)
#### 原因分析
DRS迁移是用root用户进行迁移，在迁移过程中可能存在对于某些对象无操作权限，导致迁移失败。
#### 解决方法
1. 使用root用户登录数据库，并执行如下授权语句，即可迁移成功。
   ```
   grant USAGE on schema public to root;
   grant SELECT,REFERENCES,TRIGGER on all tables in schema public to root;
   grant EXECUTE on ALL FUNCTIONS IN SCHEMA public to root;
   ```
   
2. 迁移完成后再回收权限。
   ```
   revoke USAGE schema public from root;
   revoke SELECT,REFERENCES,TRIGGER on all tables in schema public from root;
   revoke EXECUTE on ALL FUNCTIONS IN SCHEMA public from root;
   ```
   
![](https://support.huaweicloud.com/rds-pg_faq/public_sys-resources/note_3.0-zh-cn.png)
root用户执行授权命令需要内核版本为支持root提权的版本，支持root提权版本情况见[root用户权限说明](https://support.huaweicloud.com/rds-pg_faq/rds_faq_0300.html#rds_faq_0300__section8855173415459)。
