본문 바로가기

분류 전체보기

(68)
[MySQL] Grafana + influxDB + telegraf 모니터링 구성 Grafana + influxDB + telegraf 를 구성하여 MySQL 을 모니터링해보려고 한다. 각각의 역할은 아래와 같다. ν Grafana 란? Grafana는 데이터 시각화 및 대시보드 작성을 위한 오픈소스 도구이다. Prometheus, InfluxDB, Azure Monitor, CloudWatch 등 다양한 데이터 소스를 지원하며, 데이터를 가져와 원하는 시각적인 대시보드를 작성할 수 있다. ν InfluxDB 란? InfluxDB는 시계열 데이터를 저장하고 검색하기 위한 오픈소스 데이터베이스이다. InfluxDB는 대규모 데이터를 처리하고 저장할 수 있으며, SQL과 유사한 InfluxQL 쿼리 언어를 사용한다. InfluxDB는 Telegraf와 같은 데이터 수집 도구와 함께 사용되..
[SQL Server / MS-SQL] Generate Scripts 이용하여 DB 복사/이관하기 데이터베이스를 복사/이관하는 방법이 여러개 있다.보통 간단하게 DB 를 백업하고 복원하는 식으로 진행하였는데 이번 복사 건은 Azure MI (A 서버) DB -> Azure SQL Database (B 서버) DB 로 복사해야하는 건으로 백업 및 복원이 불가하였다.  그래서 이번에는 SSMS 의 Generate Scripts 를 이용하여 복사해보려고 한다.  1. Tasks > Generate Scripts... 선택  2. 복사/이관을 원하는 object 선택Script entire database and all database objects : 전체 objects 복사Select specific database objects: 선택한 objects 만 복사 나는 Users 정보는 빼고 모두 복사하려..
[Database] 트랜잭션 격리 수준 (Transaction Isolation Level) 트랜잭션 격리 수준 (Transaction Isolation Level) 이란, 동시에 여러 트랜잭션이 처리될 때 트랜잭션끼리 서로 얼마나 고립(isolation) 되어 있는지를 나타낸다. 즉, 하나의 트랜잭션이 다른 트랜잭션에 변경한 데이터를 볼 수 있도록 허용할지 말지를 결정한다. 우선 Isolation Level 에 대해 알기 전에 알아야 할 개념이 있다. 바로 Consistent Read 이다. Consistent Read 란, 말그대로 "일관된 읽기" 로 생각하면 된다. SELECT 문 실행 시 동시에 다른 트랜잭션에서 데이터를 변경하더라도 Undo Log 에 변경 전의 데이터(snapshot) 를 생성하고, 해당 시점의 snapshot 을 가져와 동일한 결과를 반환하여 일관성을 보장하기 위한 ..
[Database] MVCC - 다중 버전 동시성 제어 (Multi Version Concurrency Control) 데이터베이스에서는 여러 사용자가 동시에 접근하여 데이터를 읽고, 변경할 수 있는 동시성이 중요하다. 또한, 동시성과 함께 데이터의 일관성이 보장되어야한다. 이 동시성을 제어하고 일관성을 보장해주는 방법 중 하나가 MVCC (Multi Version Concurrency Control) 다중 버전 동시성 제어이다. ■ 기존 Locking 방식의 문제점 Locking 방식의 경우, 쓰기 작업이 수행되는동안 해당 데이터를 읽거나 쓸 수 없어 동시성의 문제가 발생한다. MVCC 를 통해 Locking 의 문제점을 해결할 수 있다. ■ MVCC 의 특징 ㆍ MVCC 는 데이터베이스의 snapshot 을 이용하여 구현된다. ㆍ 사용자가 데이터를 변경하면 데이터를 바로 변경하는 것이 아니라 변경 전의 데이터(snap..
[SQL Server / MS-SQL] MI database properties error (subquery returned more than 1 value.) 사용자가 진행한 백업과 자동 백업한 백업 정보가 msdb..backupset 테이블에 저장이 되는데동일한 db_id(database_name) 에 대한 여러 database_name 이 존재하여 발생하는 오류이다.  문제가 되는 백업 정보를 조회해보자.-- backupset 정보 조회SELECT DB_ID(database_name) AS dbid, database_name, backup_start_dateFROM msdb.dbo.backupsetWHERE type = 'D'ORDER BY DB_ID(database_name), database_name, backup_start_date 아래와 같이 동일한 dbid 에 database_name 이 여러개 저장되어 있는 것을 볼 수 있다.dbid ..
[MySQL] sql_mode 확인 및 옵션 sql_mode 란?MySQL에 저장될 데이터에 대한 유효성 검사 범위를 설정하는 시스템 변수이다.버전별로 sql_mode 기본값이 다르며, 원하는 sql_mode 를 설정하여 원하는 유효성 검사 범위를 설정 할 수 있다. sql_mode 조회 쿼리아래 쿼리를 통해 현재 sql_mode 를 조회 할 수 있다.SELECT @@sql_mode;SHOW VARIABLES LIKE 'sql_mode';MySQL 버전별 기본 sql_modeMySQL 5.7 sql_mode ONLY_FULL_GROUP_BY, STRICT_TRANS_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBST..
[SQL Server / MS-SQL] MS-SQL 에서 MySQL Linked Server 연결 1. MySQL 용 ODBC 다운로드https://dev.mysql.com/downloads/connector/odbc/ MySQL :: Download Connector/ODBCSelect Operating System: Select Operating System… Microsoft Windows Ubuntu Linux Debian Linux SUSE Linux Enterprise Server Red Hat Enterprise Linux / Oracle Linux Fedora Linux - Generic Oracle Solaris macOS Source Code Select OS Version: All Windows (x86dev.mysql.com  2. ODBC Data Source Administr..
[AWS] RDS SQL Server(MS-SQL) Agent Jobs 삭제 AWS RDS SQL Server 환경에서 SSMS 를 사용하여 SQL Server 에이전트 작업을 삭제할 수 없다. SSMS 에서 에이전트 작업을 삭제하려고 하면 아래와 같은 오류가 발생한다.The EXECUTE permission was denied on the object 'xp_regread', database 'mssqlsystemresource', schema 'sys'. AWS RDS는 Windows 레지스트리에 액세스하는 프로시저의 실행을 제한하는데,SSMS는 RDS에 의해 권한이 부여되지 않은 프로세스(xp_regread)를 실행하려고 시도한다. SQL Server 에이전트 작업은 msdb 의 sp_delete_job 저장 프로시저를 사용하여 삭제할 수 있다.-- 에이전트 작업 삭제EXE..
[MySQL] 계정 비밀번호 보안 경고 (--login-path) MySQL 5.6 부터 보안 문제로 인하여 mysql 혹은 mysqldump 사용 시,비밀번호가 노출되어 있을 경우에 아래와 같은 경고가 발생한다.Warning: using a password on the command line interface can be insecure. 위 보안 경고를 --login-path 를 이용하여 접속 정보를 암호화할 수 있다. 1. --login-path 생성[root@backup]# mysql_config_editor set --login-path=[설정이름] --host=[호스트명] --user=[사용자명] --port=[포트번호] --passwordEnter password: *****ex) mysql_config_editor et --login-path=backup..
[AWS] RDS SQL Server(MS-SQL) 백업 및 복원하기 AWS RDS SQL Server 백업은 서버의 로컬 파일 시스템을 사용하는 대신 Amazon S3 의 버킷이라는 저장소를 사용한다. 백업을 진행하기 위해서는 다음 세 가지 구성 요소가 필요하다.(1) 백업 파일을 저장할 Amazon S3 버킷.(2) 버킷 접근을 위한 IAM 역할.(3) SQLSERVER_BACKUP_RESTORE 옵션 추가. 1. Amazon S3 버킷 생성AWS Console 에서 Amazon S3 에서 버킷을 생성해보자.옵션은 각 환경에 맞게 설정해주면 되며, 나는 아래와 같이 설정 후 생성했다. - 버킷 이름: dbbackup - AWS 리전: 아시아 태평양(홍콩) - 객체 소유권: ACL 비활성화됨(권장) - 이 버킷의 퍼블릭 액세스 차단 설정: 모든 퍼블릭 액세스 차단 - 버..

반응형