본문 바로가기

MySQL

[DATABASE] Sliicon apple Mac (M1) Mysql 설치 Sliicon apple Mac (M1) Mysql 설치 얼마전까지 인텔 맥북프로를 사용하다가, M1 이 그렇게 좋다기에 큰 마음 먹고, 장비교체를 하게 되었다. ( M1 사용기 리뷰는 아니니, 자세한 내용은 적지 않겠지만, 확실히 OS 와 하드웨어의 호환성은 좋아진 것 같다. ) 그래서 다시한번 개발환경을 세팅하게 되었고, 관련 세팅방법에 대해 기록해두려고 이렇게 글을 쓰게 되었다. 최초에 M1 칩이 나왔을때, 호환성 문제(지원이안되는 SW)들이 많아서, 사용하기 꺼려졌었는데, 이제는 Homebrew 나, 많은 SW들을 지원하기 시작하고, 이미 지원되었기때문에, 갈수록 환경은 더 나아질 것이라 보여진다. 기본적으로 Homebrew 3.0 부터 M1칩에 대한 지원이 시작했기때문에, 기존과 동일하게 Mys.. 더보기
[TOOL] Mysql GUI 툴 설치부터 사용까지 - HeidiSQL [TOOL] Mysql GUI 툴 설치부터 사용까지 - HeidiSQL 공식 홈페이지 : https://www.heidisql.com/ HeidiSQL 이란 ? HeidiSQL은 무료 소프트웨어이며 쉽게 배울 수있는 목표를 가지고 있습니다. "Heidi"를 사용하면 데이터베이스 시스템 MariaDB, MySQL, Microsoft SQL 또는 PostgreSQL 중 하나를 실행하는 컴퓨터에서 데이터 및 구조를보고 편집 할 수 있습니다. HeathSQL은 2009 년과 2013 년 사이에 개발 피크를 보인 Ansgar에 의해 2002 년에 발명되었으며 전 세계적으로 MariaDB 및 MySQL에서 가장 많이 사용되는 도구입니다. 쉽게 말해서 Shell 작업으로 했던 mysql 을 GUI 를 통해서 누구든지.. 더보기
[DATABASE] Mysql 설치부터 환경설정까지 [DATABASE] Mysql 설치부터 환경설정까지 MSSQL 이나 오라클 등의 다양한 Database가 존재하지만, 무료로 가볍게 사용하기엔 Mysql 만한게 없다고 생각합니다. 많은 분들이 Mysql 에 대해 알고 계시기때문에 설치 방법만 포스팅하도록 하겠습니다. MYSQL ( https://ko.wikipedia.org/wiki/MySQL ) ySQL(마이에스큐엘, /maɪ ˌɛskjuːˈɛl/)[1]은 세계에서 가장 많이 쓰이는[2] 오픈 소스의 관계형 데이터베이스 관리 시스템(RDBMS)이다.[3] 다중 스레드, 다중 사용자 형식의 구조질의어 형식의 데이터베이스 관리 시스템으로서 MySQL AB가 관리 및 지원하고 있으며, Qt처럼 이중 라이선스가 적용된다. 하나의 옵션은 GPL이며, GPL 이.. 더보기
[DATABASE/MYSQL] MySQL 인바운드 허용하기 - 외부로 부터의 접속 포트 허용하기 [DATABASE/MYSQL] MySQL 인바운드 허용하기 - 외부로 부터의 접속 포트 허용하기 이번에 알아볼 내용은 Mysql 3306 포트에만 국한된 Tip 이 아니라, 여러 외부로 부터의 접속 포트 허용에 기본이 되는 인바운드 규칙을 설정해주는 일입니다. 목적은 ' 내 PC에, 내가 허용한 포트로의 접속을 허용한다' 라는 점입니다. 즉, 인바운드 규칙이란 것은 '내 PC로 들어오는 규칙' 에 대한 설정을 하는 것입니다. 간단하지만, 굉장히 유용하고, 자주 쓸수 있는 TIP 이지요. 1 ) 제어판 > 방화벽 설정 2 ) 고급 설정 > 인바운드 규칙 > 새 규칙 3 ) TCP / UDP 에 대한 선택을 하고, 특정 포트에 대한 설정을 해줍시다. 현 예제는 Mysql 인바운드 정책을 변경하는 방법이니 3.. 더보기
[DATABASE/MYSQL] Host '192.168.0.111' is not allowed to connect to this MySQL server 에러 - DB 원격 접속 권한 [DATABASE/MYSQL] Host '192.168.0.111' is not allowed to connect to this - MySQL server 에러 DB 원격 접속 권한 위의 에러는 로컬 DB가 아닌, 원격지의 DB 에 접속을 하려 할때, 해당 DB에 대한 접근 권한이 없기때문에 발생하는 에러입니다. 그렇기 때문에, 원격지의 DB 에서 접속하는 IP 에 따른 접속 권한을 주어서 이 문제를 해결해 보도록 합시다. 1 ) ROOT 계정으로 MYSQL 접속 > mysql -u root -p 2) 접속 허용 IP에 대한 권한을 부여합니다. > GRANT ALL PRIVILEGES ON *.* TO root@'[IP]' IDENTIFIED BY '[PASSWORD]'' WITH GRANT OPTION.. 더보기
[DATABASE] Mysql SELECT 존재 여부 체크 [DATABASE] Mysql SELECT 존재 체크 생각보다 SELCT 결과값이 존재하는지 안하는지에 대한 Boolean 값이 필요한 경우가 많이 있는데, SELECT EXISTS 문을 통해 결과 값의 존재 여부를 확인 할 수 있다. SELECT EXISTS ( ) as isChk // 결과값이 존재하면 1 // 결과값이 존재하지 않으면 0 더보기
[DATABASE] Mysql UPDATE SELECT - 결과에 특정한 컬럼 값 업데이트 [DATABASE] Mysql UPDATE SELECT - 결과에 특정한 컬럼 값 업데이트 Sub쿼리를 이용하여 SELECT 한 값에 대해 업데이트하는 것도 가능하지만, 2개이상의 결과가 나올 경우, 복잡한 쿼리 짜기가 필요 없이 단순한 조건이라면, 아래의 방법으로 바로 업데이트하는 것이 가능. UPDATE TABLE A INNER JOIN TABLE B ON A.key = B.key SET A.(업데이트할 컬럼) = (업데이트값) WHERE 조건문 1 AND 조건문 2 (예시_) UPDATE TABLE A INNER JOIN TABLE B ON A.key = B.key SET A.col = 'c' WHERE B.col < CURDATE() AND A.col2 = '2' 더보기
[DATABASE/Mysql] 시간, 기간 (FROM TO) 중복 체크 쿼리 [DATABASE/Mysql] 시간, 기간 (FROM TO) 중복 체크 쿼리 이번에 강의실의 중복 쿼리를 짜게되어서 포스팅합니다. 필요할 것 같기도해서 ^^; 마이바티스트 구문을 그대로 썻으니 필요에 따라 변경하면 될 것 같네요 . # 참고 시작 일자 = lecStDate 쫑료 일자 = lecEdDate 시작 시간 = lecStTime 종료 시간 = lecEdTime SELECT * FROM table WHERE 1=1 AND ( (lecStDate >= DATE_FORMAT(#{lecStDate},'%Y%m%d') AND lecStDate DATE_FORMAT(#{lecEdDate},'%Y%m%d') ) OR (lecEdDate >=DATE_FORMAT(#{lecStDate},'%Y%m%d') AND .. 더보기
[DATABASE] SQL JOIN 설명 - 펌 [DATABASE] SQL JOIN 설명 - 펌 그림하나로, SQL JOIN을 한번에 해결할 수 있는 것 같아서 퍼오게 되었습니다. 한장씩 프린트해놓고 눈에 익혀두면 괜찮을 것 같네요. 출처 : https://www.reddit.com/r/programming/comments/1xlqeu/sql_joins_explained_xpost_rsql/ 더보기
[eGovFrame] MyBatis - Mysql 에러 01 : Parameter index out of range (1 > number of parameters, which is 0). [eGovFrame] MyBatis - Mysql 에러 01 : Parameter index out of range (1 > number of parameters, which is 0). Mysql 에서 SQL 문을 테스트 했을 떄는 잘되었는데, Mybatis 를 이용하면 많은 에러들을 만나 볼 수 있습니다. Parameter index out of range (1 > number of parameters, which is 0) 그 중 위와같은 에러가 발생할 수 있습니다. 당황하지 않고 mapper에서 SQL문을 확인해봅시다. 두 SQL 에서 차이점은 작은 따옴표가 있냐 없냐인데요. 해당 에러를 해결 할 수 있습니다. MyBatis 에서 ' ' , " " 등의 따옴표 실수를 줄일 수 있도록 주의하면 되겠.. 더보기