从你提供的错误信息来看,"ERROR 11848 --- [Druid-ConnectionPool-Create-1o47515321.,] com.alibaba.druid.pool.DruidDataSource: create connection SQLException, url: jdbc:oceanbase://140.100.130.27:2883/ocp_express?useUnicode=true&characterEncoding=UTF8&connectTimeout-2000&socketTimeout=600000&sessionVariables=ob_query_timeout=600000000.ob_trx_timeout=600000000.rewriteBatchedstatements=true, errorCode -1, state 08S01" 这个错误是因为在建立数据库连接时遇到了SQLException,错误代码-1表示连接失败。
你提到的"如果不给policy赋值,不回上面的错,但用户必须赋权限,否则回“子用户没有权限”",这可能是因为你在创建数据库连接时,没有为policy属性设置合适的值。在OceanBase数据库中,policy属性用于指定用户的权限策略,如果没有为该属性设置合适的值,可能会导致用户无法获得必要的权限,从而出现"子用户没有权限"的错误。
建议你检查你的代码,确保在为database.setPolicy(...)设置policy属性时,使用了正确的权限策略。如果你不确定应该如何设置这个属性,可以参考OceanBase数据库的官方文档或者联系OceanBase的技术支持获取帮助。