SSL 인증서 만료일이 도래하여 교체작업을 하였다.

 

서버는 Apache 였으며 총4개의 파일을 교체하고, Apache의 설정파일에 경로를 변경하는 작업이었다.

cert_domain.crt
domain.key
rootca_domain.crt
subca_domain.crt

 

모두 변경을 완료한 이후 apache를 재시작하였으나, Error 발생 !!

 

로그를 확인해보니 아래와 같이 기록이 되있었다.

AH02241: Init: Unable to read server certificate from file /xxx/domain.key
SSL Library Error: error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag
SSL Library Error: error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error (Type=X509)
AH02312: Fatal error initialising mod_ssl, exiting.

 

Key 파일을 열어보니 

key 파일

 

위와 같이 암호화된 문자로 시작되었으며 이는 SSL 인증서를 적용하는 정상적인 상태가 아니었다.

해당 파일의 문자열은 복호화가 된 상태로 있어야 한다.

 

복호화방법은 아래와 같다.

openssl rsa -in [복호화 할 파일명(암호화 된 파일명)] -out [복호화 될 파일명]
Enter pass pharse for xxxx: 비밀번호 입력

 

위와 같이 복호화 이후 Apache를 재시작 하니 정상 작동 하였다.

USE [DBNAME]
GO

SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE PROCEDURE PROCEDURENAME
(
	@IN_PARAMETER1 NVARCHAR(10),
	@IN_PARAMETER2 BIGINT
)
AS
	DECLARE @SQL NVARCHAR(4000) = '';
	DECLARE @PARAMDEFINITION NVARCHAR(4000);
    
BEGIN
	SET NOCOUNT ON;
    
	SET @SQL = 
            N'
                SELECT 	* 
                    FROM 	TABLE 
                    WHERE 	IN_PARAMETER1 = @IN_PARAMETER1
                    AND	IN_PARAMETER2 = @IN_PARAMETER2		
            '
        ;

	SET @PARAMDEFINITION = N'@IN_PARAMETER1 NVARCHAR(10), @IN_PARAMETER2 BIGINT';

	EXEC SP_EXECUTESQL @SQL, @PARAMDEFINITION, 
		@IN_PARAMETER1 = @IN_PARAMETER1, @IN_PARAMETER2 = @IN_PARAMETER2
    ;
END

 

동적 쿼리(Dynamic SQL) 생성 예제

 

 

가그린 제로 구강청결제, 100ml, 1개

COUPANG

www.coupang.com

"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."

'Database > MSSQL' 카테고리의 다른 글

[MSSQL] 테이블 생성 및 커멘트 추가  (0) 2023.07.10
[MSSQL] 재귀 SQL 호출  (0) 2023.02.22
[MSSQL] Oracle Migration  (0) 2022.12.26
[MSSQL] - PROCEDURE CURSOR 사용 (커서)  (0) 2020.07.28
[MSSQL] - PROCEDURE IF 사용 ( 조건문 )  (0) 2019.01.15
USE DBNAME
GO

-- TABLE
CREATE TABLE TABLENAME
(
    COLUMNNAME1 NVARCHAR(10) NOT NULL,
    COLUMNNAME2 INT,
    COLUMNNAME3 DATE DEFAULT GETDATE()
);

-- TABLE COMMENT
EXEC SP_ADDEXTENDEDPROPERTY 'MS_Description', 'Comment', 'USER', dbo, 'TABLE', TABLENAME;

-- COLUMN COMMENT
EXEC SP_ADDEXTENDEDPROPERTY 'MS_Description', 'Comment', 'USER', dbo, 'TABLE', TABLENAME, 'COLUMN', COLUMNNAME;

 

DBNAME: 데이터베이스 명

TABLENAME: 테이블 명

'Comment': 사용할 커멘트

COLUMNNAME: 컬럼명

'Database > MSSQL' 카테고리의 다른 글

[MSSQL] 동적(Dynamic) 쿼리 생성 예제  (0) 2023.07.10
[MSSQL] 재귀 SQL 호출  (0) 2023.02.22
[MSSQL] Oracle Migration  (0) 2022.12.26
[MSSQL] - PROCEDURE CURSOR 사용 (커서)  (0) 2020.07.28
[MSSQL] - PROCEDURE IF 사용 ( 조건문 )  (0) 2019.01.15

Integer는 null 입력이 가능하다.

 

Integer 변수에 null이 입력되었을 경우

if문으로 숫자와 비교했을 때 바른 문법이라고 생각했다.

그러나, Integer에 null이 입력했을 경우 숫자와 비교했을 때 아래와 같은 에러가 발생하였다.

습관적으로

NullPointerException이 발생하여 num1에 null이 입력되어 발생하는 줄로만 인식하였다.

그렇다면, 처음 변수 선언하는곳에서 에러가 발생해야 하는게 아닌가?

Integer 변수에 null이 입력되어 발생하는게 아니라,

null과 정수(int 자료형)를 비교하려고 하기 때문에 발생하는 에러였다.

 

아래를 살펴보자.

정수와 null을 비교해보자. 아예 int와 null 타입자체를 비교할 수 없다고 에러가 발생한다.

 

 

 

습관은 무서운 것이다.

항상, 한 발 물러서서 접근하는 자세가 필요하다.

 

+ Recent posts