MSSQL SMTP 메일 SEND 1

sso·2023년 3월 31일
0

MSSQL

목록 보기
14/28

MSSQL에서 SMTP를 사용하여 메일을 발송할 수 있다.

  1. 관리에 데이터베이스 메일을 더블클릭 OR 우클릭 > 데이터베이스 메일 구성

  2. SMTP 첫 셋팅이니 맨 위에를 선택 후 다음

  3. 프로필을 먼저 설정해야 하는데 프로필은 메일을 보내는 종류(?) 라고 해야 하나..
    예를 들어 SQL을 실행해서 데이터베이스 폴더 내에 여러개의 DB가 있는것처럼 한개의 DB(?)

  4. 프로필 입력을 하고 SMTP 계정 추가를 위해 우측에 추가버튼을 누른다.
    (프로필 이름은 각 상황에 맞춰 입력하면 되고 나는 현재 테스트를 위한 것으로 테스트라고 썼다.)

  5. 이미 셋팅된 SMTP 계정이 있다면 선택하면 되지만 만약 계정이 없다면 새 계정을 누른다.

  6. 이제 계정 정보를 입력하면 된다.
    계정 이름에는 한글, 영어 입력가능 이 부분은 5번에서 보이는것처럼 계정을 구분하기 위한 이름이다.
    그리고 설명에는 말 그대로 설명.. 이게 어떤 계정인지에 대한 설명을 추가하고

    SMTP 정보 입력란에 이제부터 메일 주소를 적어야 한다.

    전자 메일 주소, 회신 전자 메일은 보내는 계정의 정보를 적는다.
    그리고 표시 이름에는 6-1 이미지를 보면 DBServer 라고 나오는 부분인데
    음.. 저 부분이 메일을 보내면 test test@gmail.com 이런식으로 이름 메일주소 나오는데
    이름 부분을 말하는거다.

    그리고 서버 이름에는 SMTP 주소를 적는다. 해당 부분에는 IP나 도메인 등을 적을 수 있다.
    포트 번호에는 SMTP를 보내는 포트 번호를 적으면 된다.

    마지막으로 SMTP 인증 부분은 맞추면 된다.. 모르겠다면 설정을 변경해가며 테스트하자..

6-1.

  1. 계정까지 입력이 완료됐으면 다음을 누른다.

  2. 그러면 생성한 프로필들이 보이는데 저기서는 그냥 공개 안함으로 체크한다(이유는 모르겠다..) 그리고 다음을 눌러서 작업을 마치면 된다.

  3. 입력한 프로필 정보를 입력하고 받는 사람의 주소, 제목, 본문을 적어서 프로시저를 실행하면 된다.
    보내졌는지 안보내졌는지는 아래 sent_status의 상태를 확인하면 된다.

  4. sent_status에서 전송이 성공적으로 됐으면 sent, 실패했으면 failed 재시도중이라면 retrying이라고 나온다.
    그리고 recipients에는 받는 사람의 메일 주소, subject에는 제목, body에는 본문에 적은 내용이다.

EXEC [msdb].dbo.sp_send_dbmail @profile_name = 'MailSend_Test' -- SQL 에서 보내는 프로필
, @recipients = 'test@gmail.com' -- 받는 사람 메일 주소
, @subject = '메일 전송 TEST' -- 제목
, @body = '전송 테스트입니다.' -- 본문

SELECT sent_status, *
FROM msdb.dbo.sysmail_allitems

profile
오늘도 하나씩 해결해 나가자!

0개의 댓글