Golang map底层实现原理_Golang map哈希表原理教程【收藏】

张开发
2026/4/16 21:05:48 15 分钟阅读

分享文章

Golang map底层实现原理_Golang map哈希表原理教程【收藏】
ORA-16664 根本不是网络超时而是监听未注册_DGMGRL专用服务名导致连接被拒需检查listener.ora静态注册、tnsnames.ora中SERVICE_NAME匹配、oracle二进制权限及dmon进程状态。ORA-16664 根本不是网络超时而是监听没认出 Broker 请求看到 ora-16664 就去查防火墙、ping、tnsping大概率白忙——这个错误的典型表现是“秒报错”不是等几秒后超时说明请求压根没进数据库卡在监听层就被拒了。broker 不走普通服务名比如 orcl它用的是专用服务名db_unique_name_dgmgrl/db_unique_name如 sorcldb_dgmgrl。如果监听器里没显式注册这个服务dgmgrl 连接时就会被 tns-12514 或直接拒绝最终表现为 ora-16664。检查监听状态lsnrctl status搜索输出中是否存在类似 service sorcldb_DGMGRL 的条目若无立刻检查 $ORACLE_HOME/network/admin/listener.ora必须添加静态注册项sid_list_listener (sid_list (sid_desc (global_dbname sorcldb_DGMGRL) (oracle_home /u01/app/oracle/product/19c/dbhome_1) (sid_name sorcldb) ) )改完执行 lsnrctl reload再 lsnrctl status 确认服务已上线dg_broker_start 为 true ≠ dmon 进程一定在跑参数设对了不代表 Broker 后台进程 ora_dmon_db_name/db_name 就真起来了。尤其在备库上dg_broker_starttrue 可能只是“允许启动”但因依赖条件不满足比如控制文件未识别为 standby 角色、归档未启用dmon 会静默失败。主备库均执行ps -ef | grep dmon | grep -v grep确认有对应进程若无先查 show parameter dg_broker_start 是否真为 TRUE注意大小写和 scope再查告警日志tail -50 $ORACLE_BASE/diag/rdbms/db_name/instance_name/trace/alert_instance_name.log/instance_name/instance_name/db_name搜 dmon 或 broker常见拦截点备库未开启 REDO APPLY、LOG_ARCHIVE_CONFIG 缺失如未设 DG_CONFIG(primary_db,standby_db)TNS 名称解析必须双向可通且 SERVICE_NAME 要匹配 DGMGRL 专用名很多人只配了主库能连备库的 TNS忘了 dgmgrl 在主库执行命令时也会从备库反向回调主库——Broker 是对等通信模型。而且连接串里写的 SERVICE_NAME 必须和监听器注册的 global_dbname 完全一致大小写敏感。 Ideogram Ideogram是一个全新的文本转图像AI绘画生成平台擅长于生成带有文本的图像如LOGO上的字母、数字等。

更多文章