글

라벨이 LIMIT인 게시물 표시

Error (MongoDB Atlas) : Connections % of configured limit has gone above 80

이미지
 안녕하세요. 이번에는 MongoDB를 사용하다가 발생한 에러에 대해서 말씀드릴려고 합니다.  사진1) 에러 사진 위 에러에서 발생한 이유는 서버쪽에서 MongoDB쪽의 connection을 끊지 않고 유지하기 때문에 발생하는 현상입니다. 특히 Atlas의 무료버전을 사용하고 있다면 connections을 500개까지 허용하고 있습니다. 사진2) limit까지 올라간 connections  즉 어디선가 접속을 하고 close를 하지 않은 것입니다. 그럼 해당 문제가 되는 코드를 확인해 보겠습니다. const { MongoClient } = require ( 'mongodb' ); const url = 'mongodb+srv://alex:vlfvhdwntsdfghetk@xrstudio.q7lsz.mongodb.net/myFirstDatabase?retryWrites=true&w=majority' ; const client = new MongoClient ( url ); // 접속할려는 MongoDB 서버의 url을 지정한다. // Database Name const dbName = 'test' ; // 모든 데이터를 얻기 위한 함수 export async function getAllData () { await client . connect (); // 몽고DB에 접속을 한다. console . log ( 'Connected successfully to server : getAllData' ); const db = await client . db ( dbName ); // 해당 MongoDB의 DataBase을 지정한다(위 코드는 'test' DB를 선택) const collection = await db . collection ( 'games' ); // collection을 선택한다.(위 코드는 'game...

DBMS MySQL - SQL4 : LIMIT, LIKE -> 조회수 제한 및 키워드로 DB조회하기

이미지
이전글 : DBMS MySQL - SQL3 : ORDER BY 결과 정렬하기  안녕하세요. 알렉스입니다. 이번에는 SQL문을 이용하여 조회수를 제한하거나 검색을 해보도록 하겠습니다. 1. LIMIT 'LIMIT'는 기타이유로 모든 결과가 아닌 제한된 조회수를 출력합니다. 예로 들어 날짜별로 100개의 데이터가 있는데 그중에 상위 3개만 보고 싶으면 LIMIT를 사용합니다. $ SELECT [Column Name] FROM [Table Name] LIMIT [Limit Number] 조회되는 Record의 수를 제한한다. copy 사진1) Limit사용 후 출력 하지만 LIMIT는 숫자만 입력되지는 않습니다. 인자 2개를 입력하면 자동으로 해당 Record를 설정한 숫자만큼 출력할수 있습니다.(skip:무시할 Record수, take : 무시할 레코드 다음으로 조회할 수) $ SELECT [Column Name] FROM [Table Name] LIMIT [skip],[take] copy 사진2) Skip, Take사용 후 출력 사진2를 보면 skip는 1이기 때문에 book_id가 1인 레코드를 무시하게 되었습니다. 만약 skip가 0이면 사진1과 동일할 것입니다. 이후 take에서 3을 입력했기 때문에 3개의 레코드가 출력된 것입니다. 2. LIKE LIKE키워드는 해당 Column을 검색하기 위해서 사용합니다. 기존에 사용한 "WHERE id='123'"같이 id가 123과 완전히 일치해야 찾는 것이 아닌 부분적으로 일치해도 찾을수 있게 도와줍니다. 이따 사용하는 키워드가 '%'입니다. $ SELECT [Column Name] FROM [Table Name] WHERE [Column Name] LIKE'[[keyword]%]' copy 사진3)Like사용 하지만 이때 조회된 Record는 앞단이 'wh'인 것들 입니다. 만약 뒤쪽의 키...