
# 表路径长度大于128时Hive级联授权操作异常
#### 问题
MRS 3.3.0及之后版本，开启Hive表级联授权功能后，表路径长度大于128时，在Ranger页面对表进行授权失败。
#### 回答
当前级联授权元数据表路径字段支持的最大长度限制默认为128，需要修改字段类型后，再进行授权操作。
1. 登录Manager页面，选择"集群 \> 服务 \> Ranger \> 配置 \> 全部配置"，搜索"DB_FLAVOR"参数，查看当前Ranger数据库类型。 ![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000002603728803.png "点击放大")
   
2. 登录对应数据库并执行SQL修改字段类型，建议在业务低峰期执行。
   - GAUSSDB
     1. 以**root** 用户登录DBServer主节点，执行以下命令切换至**omm** 用户：
        ```
        su - omm
        ```
        
     
     2. 执行以下命令配置环境变量：
        ```
        source $DBSERVER_HOME/.dbservice_profile
        ```
        
     
     3. 执行以下命令使用具备**ranger** 库权限的用户登录Ranger元数据库，例如用户为**metauser** ：
        ```
        gsql -p 20051 -U metauser -W PASSWD -d ranger
        ```
        
     
     4. 执行以下命令修改"ext_resource_mapping"表的"tbl_name"字段类型：
        ```
        ALTER TABLE ext_resource_mapping ALTER COLUMN tbl_name TYPE VARCHAR(642);
        ```
        
     
     5. 执行以下命令修改"ext_resource_mapping"表的"path"字段类型：
        ```
        ALTER TABLE ext_resource_mapping ALTER COLUMN path TYPE VARCHAR(4000);
        ```
        
      
   
   - MYSQL
     1. 登录MySQL数据库。
     
     2. 执行以下命令修改"ext_resource_mapping"表的"tbl_name"字段类型：
        ```
        ALTER TABLE ext_resource_mapping MODIFY COLUMN tbl_name VARCHAR(642);
        ```
        
     
     3. 执行以下命令删除"ext_resource_mapping_IDX_path"索引：
        ```
        DROP INDEX ext_resource_mapping_IDX_path ON ext_resource_mapping;
        ```
        
     
     4. 执行以下命令修改"ext_resource_mapping"表的"path"字段类型：
        ```
        ALTER TABLE ext_resource_mapping MODIFY COLUMN path VARCHAR(4000);
        ```
        
     
     5. 执行以下命令重新创建"ext_resource_mapping_IDX_path"索引：
        ```
        CREATE INDEX ext_resource_mapping_IDX_path ON ext_resource_mapping(path(767));
        ```
        
      
    
 
