전체 글 1383

Redis 데이터 타입 - List

Redis 데이터 타입 - List · Version : Redis 3.2.100 (Windows) Redis 의 List 데이터 타입은 배열(Array) 과 비슷한 데이터 구조이다. List 타입의 데이터를 핸들링할 때에는 lpush, lrange, rpush, rpop, llen, lindex 명령어를 사용한다. [lpush] List 타입은 하나의 key에 여러 개의 value를 저장할 수 있다. lpush key value value value … lpush order:20190426 "1redis000" "2client000” [lrange] List 형태의 데이터를 검색할때 lrange 명령어를 사용한다. 명령어 사용시 key, start, stop 값을 함께 사용한다. 아래 스크립트는 0 -..

NoSql, MemoryDB 2019.04.27

Redis 데이터 타입 - Hash

Redis 데이터 타입 - Hash · Version : Redis 3.2.100 (Windows) Redis 에서 데이터를 저장할때, 하나의 key 에 여러 개의 Value를 저장할때에는 Hash 데이터 타입을 사용할 수 있다. Hash 데이터 타입은 하나의 key 에 하나 이상의 value 값을 콜론(:)으로 구분하여 데이터를 저장할 수 있다. 기본적으로 필드의 갯수는 제한이 없으며, Value 값에 문자열을 사용할 때는 “string”를 사용한다. order_date:20190426, order_name:”sungwook”:”kang” [hmset / hget / hmget] Hash 타입의 데이터를 입력할때 hmset 명령어를 사용한다. 데이터를 검색할 때에는 hget 명령어를 사용한다. hmse..

NoSql, MemoryDB 2019.04.26

Redis 데이터 입력, 수정, 삭제, 조회

Redis 데이터 입력, 수정, 삭제, 조회 · Version : Redis 3.2.100 (Windows) Redis는 키밸류(Key-Value) 시스템으로 데이터를 입력,수정,삭제,조회를 하기 위해서는 Redis에서 제공하는 명령어를 사용해야 한다. 아래 실습을 통해서 데이터를 핸들링하는 방법에 대해서 알아본다. [set] 데이터를 저장할 때에는 set 명령을 사용한다. set key value ex) set 1 “sqlmvp” [get] 데이터를 검색할 때에는 get 명령을 사용한다. get key ex) get 1 [rename] 저장된 key 값을 변경할 때에는 rename 명령을 사용한다. rename key newkey ex)rename 1 “sqlmvp1” [keys] 저장된 모든 키를 검..

NoSql, MemoryDB 2019.04.25

Redis - redis-cli를 사용한 Redis Server접속

Redis - redis-cli를 사용한 Redis Server접속 · Version : Redis 3.2.100 (Windows) Redis가 설치 되어 있으면 설치되어 있는 폴더에서 redis-cli.exe를 사용하여 Redis 서버에 접속할 수 있다. 이때 Redis 인스턴스를 활성화 할 때 사용했던 포트 번호를 -p 옵션과 함께 사용한다. redis-cli.exe -p 6379 redis-cli -h 127.0.0.1 -p 6379 -a mypassword Note : 비밀번호에 $ 기호가 있으면 에러가 발생한다. Redis-Shell에서 실행할 수 있는 명령어 리스트를 조회하려면 help를 입력한다. help 명령어와 함께 실행할 명령어를 입력하면 해당 명령어의 자세한 사용법이 표시 된다. [참..

NoSql, MemoryDB 2019.04.24

Redis 설치 (Windows)

Redis 설치 (Windows) · Version : Redis 3.2.100 Redis는 (글을 쓰는 현재)공식적으로 Windows 버전을 지원하지 않는다. 하지만 공식 사이트를 살펴 보면 Microsoft에서 Win-64 port를 개발하고 유지한다고 한다. · Redis : https://redis.io/topics/introduction Redis is written in ANSI C and works in most POSIX systems like Linux, *BSD, OS X without external dependencies. Linux and OS X are the two operating systems where Redis is developed and more tested, and..

NoSql, MemoryDB 2019.04.23

SQL Server master 데이터베이스 정리

SQL Server master 데이터베이스 정리 · Version : SQL Server SQL Server에서 master 데이터베이스의 역할은 시스템에 대한 모든 정보를 기록한다. 여기에는 로그인 계정, 끝점, 연결된 서버 및 시스템 구성설정과 같은 인스턴스 차원의 메타 데이터가 포함된다. · master database : https://docs.microsoft.com/en-us/sql/relational-databases/databases/master-database?view=sql-server-2017 우리는 가끔 의도하지 않게 master 데이터베이스에 개체를 생성하는 경우가 있다. 대부분 개체를 생성할 때 USE 문을 생략했을 수도 있고 수 많은 작업창을 띄어 놓고 사용하다가 실수할 수도..

SQL Server 프로토콜과 SQLCMD를 사용한 연결

SQL Server 프로토콜과 SQLCMD를 사용한 연결 · Version : SQL Server SQL Server에 연결하는 것은 이미 많은 문서를 통해서 잘 알려져 있으며 GUI를 제공하는 툴들이 많아서 어렵지 않게 느껴질 수가 있다. 하지만 상황에 따라 복잡해 질 수 있다. 만약 TCP 포트에서 수신대기를 하지 않는 SQL Server 인스턴스에는 어떻게 연결할까? 호스트 컴퓨터가 서버 DNS를 확인할 수 없는 경우 어떻게 SQL Server에 연결할까? 명명된 인스턴스는 무엇일까? 이번 포트스에서 SQLCMD를 사용하여 다양한 프로토콜의 의미와 사용법을 알아 본다. SQL Server를 관리하는 다양한 툴들이 있다. 특히SSMS(SQL Server Management Studio)는 Micros..

SQL Server Edition 다운그레이드 후 확인사항

SQL Server Edition 다운그레이드 후 확인사항 · Version : SQL Server SQL Server Enterprise Edition 에서 SQL Server Standard Edition으로 다운 그레이드 후 확인해야 할 몇 가지 사항에 대해서 알아본다. SQL Server Enterprise Edition을 SQL Server Standard Edition으로 다운그레이드 후 일부 구성이 기본값으로 다시 설정된다. [SQL Server 오류 로그 수] SQL Server 오류 로그 파일의 수가 기본 6개로 재설정된다. 이 설정을 확인하고 필요한 수로 설정한다. SSMS의 GUI를 사용할 수도 있으며 T-SQL 코드를 사용할 수 있다. USE [master] GO EXEC xp_in..

AlwaysOn 구성환경에서 Server Role 체크 후 Job Agent 실행 중지하기

AlwaysOn 구성환경에서 Server Role 체크 후 Job Agent 실행 중지하기 · Version : SQL Server SQL Server에서 AlwaysOn을 구성하였을때, Failover 를 대비하여 Secondary 서버에서도 Primary서버와 동일하게 계정, Job Agent 등이 구성되어 있어야 한다. 그런데 Secondary의 경우 DB가 동기화 되고 있는 대기 서버이기 때문에 Job Agent를 Primary와 동일하게 설정하면 Secondary에서 Job 실행 시 Job Fail이 발생한다. 또한 Secondary에서 일부 Job 의 경우 실행이 되지 말아야 할 것들이 있다. 아래 스크립트는 AlwaysOn 의 role을 확인하여 서버가 Primary일 때만 Job Agent..

Docker Network

Docker Network · Version : Docker Docker network는 컨테이너에 내부IP를 순차적으로 할당하고 컨테이너가 재시작 할 때마다 부여된 IP가 변경될 수 있다. 내부IP는 도커가 설치된 호스트의 내부망에서만 쓸 수 있기 때문에 외부와 통신을 하기 위해 veth* 라는 네트워크 인터페이스를 생성하여 외부와 통신한다. 도커가 설치된 호스트에서 ifconfig나 ip addr같은 네트워크 명령어로 인터페이스를 확인 해보면 실행중인 컨테이너 수 만큼 veth*로 시작하는 인터페이스가 생성된 것을 알 수 있다. · eth0 : 내부IP가 외부로 통신하기 위한 인터페이스로 호스트의 네트워크 이다. Eth0 네트워크가 각 veth*로 시작하는 네트워크와 통신한다. · docker0 : ..