OB 如何导出“人为创建的用户和授权”?

OB 如何导出“人为创建的用户和授权”?在没有开启审计的情况下,oracle和mysql分别如何实现

5 个赞

@论坛小助手

3 个赞

在没有开启审计的情况下,OceanBase 数据库(OB)可以导出“人为创建的用户和授权”的信息。针对不同的数据库模式,具体实现方法如下:

MySQL 模式

  1. 导出用户信息
    可以从 mysql.user 表中查询用户信息,示例如下:
    SELECT user, host FROM mysql.user;
    
  2. 导出用户授权信息
    使用 SHOW GRANTS 语句查看用户的权限,示例如下:
    SHOW GRANTS FOR user01;
    
    这将返回用户 user01 的所有权限。

Oracle 模式

  1. 导出用户信息
    可以从 DBA_USERS 视图中查询用户信息,示例如下:
    SELECT username, account_status FROM DBA_USERS;
    
  2. 导出用户授权信息
    使用 DBA_SYS_PRIVSDBA_TAB_PRIVSDBA_ROLE_PRIVS 视图查询用户的权限,示例如下:
    -- 查询系统权限
    SELECT grantee, privilege FROM DBA_SYS_PRIVS;
    
    -- 查询表级权限
    SELECT grantee, table_name, privilege FROM DBA_TAB_PRIVS;
    
    -- 查询角色权限
    SELECT grantee, granted_role FROM DBA_ROLE_PRIVS;
    

这些查询可以帮助你导出所有人为创建的用户及其授权信息。

更多信息请查看:

  1. 使用 MySQL 租户做常见数据库开发
  2. 使用导数工具进行数据迁移
  3. 创建用户
  4. 直接授予权限
  5. 访问控制
  6. CREATE USER
  7. IMPORT_INDEX_STATS
3 个赞

签到

2 个赞

点赞

2 个赞

学习

1 个赞