본문 바로가기

쿤즈 Server27

[Mysql] 오라클 rownum 키워드 Mysql 변경 프로젝트를 진행하다 보면 데이터베이스 업그레이드 혹은 다른 데이터베이스로 마이그레이션을 해야 하는 경우가 종종 발생합니다. 특히 다른 데이터베이스로 넘어가는 경우에는 여러 가지 쿼리를 확인해야 하죠. 이번 포스팅에서는 오라클에서 사용하는 rownum을 mysql에서 어떻게 변경할 수 있는지 알아볼게요. 오라클에서 사용하는 rownum 오라클에서 사용하는 rownum은 리스트의 순서대로 번호를 순차적으로 만들어주는 기능입니다. 그래서 조회된 데이터가 몇 번째 행인지 쉽게 알 수 있습니다. rownum은 보통 아래와 같이 사용합니다. selelct rownum, m.* from member m; member 테이블의 전체를 가져오되 가장 앞에는 rownum이라는 키워드를 넣어줘서 각 필드에 번호를 넣어주도록.. 2022. 4. 23.
[Unix] vi 사용시 단말기 폭 초과 문제 해결 방법 오랜만에 Unix 서버에서 컴파일 작업을 해야 할 일이 발생했습니다. 그래서 vi를 열고 작업을 하려 하니 갑자기 오류가 발생합니다. Unix 서버는 익숙하지 않아서 그런지 약간 당황 했고 이것저것 찾아보았습니다. 이번 포스팅에서는 단말기 폭 초과 문제를 해결 하는 방법에 대해서 포스팅하도록 하겠습니다. 단말기 폭 초과 라는 문제가 발생 Unix 서버를 접속하고 소스 편집을 위해서 vi를 오픈하니 아래와 같은 문구가 나타납니다. 단말기 폭 초과 : 그리고는 vi로 파일 조차도 볼 수 없는 것이죠. 그럼 이것은 무슨 의미일까요? 단말기는 터미널을 의미합니다. Putty와 같은 SSH 혹은 Telnet으로 붙어서 서버를 접속하는 툴을 의미합니다. 여기서 화면이 폭이 기본 서버에서 설정되어 있는 폭보다 크기 .. 2021. 9. 16.
[MariaDB / Mysql] IP 값을 DB 저장시 숫자 형태로 저장하는 방법 웹 프로그래밍을 하다 보면 데이터베이스(이하 'DB')를 사용해서 데이터를 CRUD (Create, Read, Update, Delete) 하는 작업을 많이 하게 됩니다. 그리고 데이터를 가져올 때 검색해서 비교하는 조건들이 많이 따라다니게 되죠. 저의 경우 IP를 비교해야 할 경우가 빈번히 발생합니다. 현재 IP가 조건에 들어온 IP와 비교하여 범위에 속하는지 여부를 판단해야 하는 경우가 발생하죠. 이번 포스팅에서는 DB에 IP를 저장하는 것에 대해서 알아볼게요. IP 저장은 문자열? 숫자? IP를 저장하는 방법들 중 많이 사용하는 두 가지는 문자열로 저장하는 방법과 숫자 형태로 저장하는 방법이 있습니다. 문자열을 말 그대로 우리가 읽을 수 있고 판단할 수 있는 글자의 형태입니다. 숫자 형태는 우리가 .. 2021. 9. 3.
[Linux] CentOS 8 네트워크 본딩(bonding) 방법 학생 시절에는 본딩에 대해서는 한 번도 생각해 본 적이 없습니다. 현재 내 Vmware 또는 Virtural Box의 Linux에서 로컬과 통신만 되면 됐었으니 말이죠. 하지만 실무에서 장비를 납품하게 되면 본딩이라는 작업을 해주게 됩니다. 이번 포스팅에서는 본딩에 대한 내용과 설정 방법에 대해서 알아보도록 하겠습니다. 본딩(bonding)이란 무엇인가 본딩은 간단히 이해하면 네트워크를 묶어서 하나의 네트워크로 연결하는 방법을 의미합니다. 보통 네트워크를 연결하기 위해서 랜카드 1개가 필요하고 여기에 랜선을 연결하여 네티워크 통신을 하도록 합니다. 만약 랜카드가 2개라면 두 개의 랜카드를 묶어서 하나의 랜카드처럼 사용할 수 있다는 말입니다. 그래서 둘 중 하나를 Active로 두고 나머지를 Stand b.. 2021. 7. 13.
[Linux] CentOS 8 Stream 방화벽 firewall 설정 CentOS 7부터는 방화벽의 기본 설정은 iptables가 아닌 firewall 데몬으로 사용하고 있습니다. 그래서 CentOS의 버전이 올라가면서 iptables 정책만을 사용하다가 firewall이라는 새로운 데몬을 알아둬야 합니다. 오늘은 CentOS 8 Stream에서 firewall 데몬 사용 방법에 대해서 알아보겠습니다. 방화벽 명령어 firewall-cmd firewall 데몬이 우선 실행되고 있는지를 판단하기 위해서 systemctl 명령어를 이용해서 확인해 보도록 합니다. # systemctl status firewalld 지금과 같이 active (running) 상태라면 현재 데몬이 실행 중인 것입니다. 그럼 먼저 firewall-cmd 명령을 이용해서 상태를 확인해 보도록 하겠습니.. 2021. 7. 12.
[MariaDB] SQL select 쿼리(query) 사용 방법 SQL(Structured Query Language)은 구조적 질의 언어의 줄임말로 관계형 데이터베이스에서 데이터를 핸들리 하기 위해서 사용되는 언어입니다. 여러 가지 문법이 있지만 이번 포스팅에서는 Select 문법에 대해서 보려 합니다. Select 공식 Syntax MariaDB에서는 Select 문법에 대해서 아래와 같이 표현하고 있습니다. MariaDB 공식 Syntax SELECT [ALL | DISTINCT | DISTINCTROW] [HIGH_PRIORITY] [STRAIGHT_JOIN] [SQL_SMALL_RESULT] [SQL_BIG_RESULT] [SQL_BUFFER_RESULT] [SQL_CACHE | SQL_NO_CACHE] [SQL_CALC_FOUND_ROWS] select_e.. 2021. 6. 10.
[MongoDB] find() 검색(3): 비교 연산자 Comparison Operator 데이터베이스에 데이터를 CRUD(Create Read Update Delete)를 할 때에, 가장 많이 사용하는 부분이 Read부분이 아닐까 생각됩니다. 효과적으로 가공도 해야 하고 통계를 위해 분석하고 조건을 만들어서 가져와야 하죠. 이번 포스팅은 find() 함수를 이용한 검색중에서 비교 연산자를 사용하여 검색하는 방법을 알아볼게요. 비교 연산자 Comparison Operator 비교 연산자는 이름 그대로 비교하여 결과를 반환하는 연산자입니다. 보통 연산자는 키워드를 의미합니다. 크다, 작다, 같다, 크거나 같다, 작거나 같다 같은 표현을 만들기 위해서 사용하는 키워드입니다. mongoDB에서는 다음과 같은 키워드를 사용합니다. $lte : 작거나 같다. (less than or equal) $lt.. 2021. 6. 9.
[MongoDB] 데이터 삭제(Delete) 방법 데이터 베이스 프로그래밍에 가장 기본은 CRUD입니다. RDBMS(관계형 데이터 베이스)든 NoSQL이든 관계없습니다. 그래서 이전 포스팅까지는 알아본 내용은 Create, Read, Update 였습니다. 이번 포스팅에서는 마지막인 Delete에 대해서 알아보도록 하겠습니다. MongoDB 접속 및 데이터 확인 데이터를 확인부터 해야 삭제할 데이터를 선택할 수 있습니다. 우선 MongoDB에 접속하도록 합니다. show databases use sample_training show collections 우선 데이터 베이스를 확인하고 저는 sample_training 데이터 베이스로 이동하였습니다. 이 데이터 베이스에는 어떤 collection이 있는지 확인하는 명령어까지 사용해 보았습니다. collec.. 2021. 6. 7.
[MongoDB] 검색(2): Array 또는 Object 검색 방법 앞선 포스팅에서 MongoDB의 Document를 찾는 방법을 알아보았습니다. 2021.03.13 - [쿤즈 Server/MongoDB] - [MongoDB] Atlas 명령어 연결 및 find() 검색기능 사용방법 [MongoDB] Atlas 명령어 연결 및 find() 검색기능 사용방법 MongoDB가 무엇인지부터 MongoDB에서 사용하는 JSON과 BSON에 대해서도 차근차근 알아봤습니다. 기존에 많이 알려진 관계형 데이터베이스(RDBMS)가 아닌 NoSQL을 이용해서 데이터를 저장하는 방법을 채택 koonsland.tistory.com find() 함수를 이용해서 데이터를 검색하다보면 의문점이 하나 발생합니다. 바로 Arrays 또는 Object형태의 데이터를 검색할 때에는 검색이 생각대로 안된.. 2021. 4. 14.