I/O error on POST request for "/salaryDetail/v1/affirm": null; nested exception is org.apache.http.client.ClientProtocolException
时间: 2024-04-07 16:28:37 浏览: 25
这个错误通常表示在发送 POST 请求时出现了 I/O 错误,可能是由于网络连接问题、服务器故障或客户端代码错误等原因造成的。同时,错误信息中也提到了一个嵌套的异常 org.apache.http.client.ClientProtocolException,这通常表示客户端在发送请求时使用的协议不被服务器所支持。解决这个问题可能需要检查网络连接、服务器状态以及客户端代码中与请求相关的部分,例如 URL、参数、请求头等。建议根据具体情况进行排查和解决。
相关问题
oracle 19c DG搭建教程
以下是Oracle 19c DG(Data Guard)搭建教程的简要步骤:
1. 准备工作
a. 安装Oracle 19c数据库软件,并创建主库和备库的数据库实例。
b. 确保主库和备库之间的网络连接正常。
c. 在主库和备库中创建一个共享文件夹,用于存储备库的归档日志。
2. 配置主库
a. 在主库中启用归档模式:
ALTER DATABASE ARCHIVELOG;
b. 配置主库的归档日志目标:
ALTER SYSTEM SET LOG_ARCHIVE_DEST_1='LOCATION=/path/to/shared/folder VALID_FOR=(ALL_LOGFILES,ALL_ROLES)';
c. 配置主库的归档日志格式:
ALTER SYSTEM SET LOG_ARCHIVE_FORMAT='%t_%s_%r.arc';
d. 创建主库的备份控制文件:
ALTER DATABASE CREATE STANDBY CONTROLFILE AS '/path/to/shared/folder/control1.ctl';
3. 配置备库
a. 在备库中启用归档模式:
ALTER DATABASE ARCHIVELOG;
b. 配置备库的归档日志目标:
ALTER SYSTEM SET LOG_ARCHIVE_DEST_1='LOCATION=/path/to/shared/folder VALID_FOR=(ALL_LOGFILES,ALL_ROLES)';
c. 配置备库的归档日志格式:
ALTER SYSTEM SET LOG_ARCHIVE_FORMAT='%t_%s_%r.arc';
d. 创建备库的控制文件:
ALTER DATABASE CREATE CONTROLFILE AS '/path/to/shared/folder/control2.ctl';
e. 在备库中创建一个配置文件(standby.ora),包含以下内容:
DB_NAME='<备库数据库实例名>'
DB_UNIQUE_NAME='<备库唯一名>'
LOG_ARCHIVE_CONFIG='DG_CONFIG=(<主库唯一名>,<备库唯一名>)'
FAL_SERVER='<主库唯一名>'
FAL_CLIENT='<备库唯一名>'
STANDBY_FILE_MANAGEMENT='AUTO'
REMOTE_LOGIN_PASSWORDFILE='EXCLUSIVE'
4. 启动数据保护
a. 在主库中启动数据保护:
ALTER DATABASE START LOGICAL STANDBY APPLY IMMEDIATE;
b. 在备库中启动数据保护:
STARTUP NOMOUNT
ALTER SYSTEM SET STANDBY_FILE_MANAGEMENT=MANUAL;
ALTER SYSTEM SET STANDBY_ARCHIVE_DEST_1='LOCATION=/path/to/shared/folder';
ALTER SYSTEM SET STANDBY_ARCHIVE_DEST_2='SERVICE=<主库唯一名> LGWR ASYNC AFFIRM DELAY=0 OPTIONAL';
ALTER DATABASE MOUNT STANDBY DATABASE;
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
5. 测试数据保护
a. 在主库中创建一个测试表:
CREATE TABLE test_tab (test_col NUMBER);
b. 在备库中查询测试表是否同步:
SELECT COUNT(*) FROM test_tab;
如果返回的结果是0,说明数据保护已经成功搭建,并且主库和备库之间的数据同步正常。
Oracle dg搭建步骤
Oracle Data Guard(DG)是一个高可用性解决方案,可以将主数据库的数据实时复制到一个或多个备用数据库中。以下是Oracle DG搭建的步骤:
1. 在主数据库上启用归档模式。在主机上运行以下命令:
```
SQL> alter database archivelog;
SQL> alter system switch logfile;
```
2. 在主数据库上创建归档目标路径。在主机上运行以下命令:
```
SQL> alter system set log_archive_dest_1='LOCATION=/u01/archivelog';
```
3. 在主数据库上创建一个备用控制文件。在主机上运行以下命令:
```
SQL> alter database create standby controlfile as '/u01/controlfile/control01.ctl';
```
4. 在备用数据库上创建一个PFILE文件。在备用主机上运行以下命令:
```
SQL> create pfile='/u01/pfile/init_standby.ora' from spfile;
```
5. 修改PFILE文件。在备用主机上编辑PFILE文件,并添加以下参数:
```
# 指定数据库名称
db_name='database_name'
# 指定主数据库的连接信息
standby_file_management='AUTO'
log_archive_dest_1='LOCATION=/u01/archivelog'
log_archive_dest_2='SERVICE=database_name LGWR SYNC AFFIRM VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=database_name'
# 指定主数据库的IP地址和端口号
remote_login_passwordfile='EXCLUSIVE'
fal_client='database_name'
fal_server='database_name'
standby_archive_dest='/u01/archivelog'
db_file_name_convert='/u01/oradata/DB','/u01/oradata/STANDBY'
log_file_name_convert='/u01/oradata/DB','/u01/oradata/STANDBY'
```
6. 启动备用数据库并连接到SQL Plus。在备用主机上运行以下命令:
```
SQL> startup nomount pfile='/u01/pfile/init_standby.ora';
SQL> alter database mount standby database;
```
7. 在主数据库上创建一个备用日志传输服务。在主机上运行以下命令:
```
SQL> alter system set log_archive_dest_2='SERVICE=database_name LGWR SYNC AFFIRM VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=database_name';
SQL> alter system switch logfile;
```
8. 在备用数据库上启动日志传输服务。在备用主机上运行以下命令:
```
SQL> alter system set log_archive_dest_2='SERVICE=database_name LGWR SYNC AFFIRM VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=database_name';
SQL> alter system switch logfile;
```
9. 在主数据库上启用DG。在主机上运行以下命令:
```
SQL> alter database add standby logfile group 4 ('/u01/oradata/DB/redo04a.log', '/u01/oradata/STANDBY/redo04b.log') size 50m;
SQL> alter database add standby logfile group 5 ('/u01/oradata/DB/redo05a.log', '/u01/oradata/STANDBY/redo05b.log') size 50m;
SQL> alter system switch logfile;
SQL> alter system switch logfile;
SQL> alter system switch logfile;
SQL> alter database force logging;
SQL> create user sysdg identified by password;
SQL> grant sysdg to sysdba;
SQL> alter database set standby database to maximize performance;
```
10. 在备用数据库上启用DG。在备用主机上运行以下命令:
```
SQL> alter database add standby logfile group 4 ('/u01/oradata/DB/redo04a.log', '/u01/oradata/STANDBY/redo04b.log') size 50m;
SQL> alter database add standby logfile group 5 ('/u01/oradata/DB/redo05a.log', '/u01/oradata/STANDBY/redo05b.log') size 50m;
SQL> alter system switch logfile;
SQL> alter system switch logfile;
SQL> alter system switch logfile;
SQL> alter database force logging;
SQL> create user sysdg identified by password;
SQL> grant sysdg to sysdba;
SQL> alter database set standby database to maximize performance;
```
11. 启动DG。在备用主机上运行以下命令:
```
SQL> alter database recover managed standby database disconnect from session;
```
这些是搭建Oracle DG的基本步骤。但是在实际应用中,还需要根据特定的需求进行一些调整和优化。