본문 바로가기

Others/데이터베이스

(31)
Redis GUI 클라이언트, Medis 설치하기 Image from getmedis.com TL;DR for macOS 많이 바쁘시죠? git clone https://github.com/luin/medis.git cd medis npm i npm run pack # webpack analyzer가 뜨고 난 후 프로세스를 종료하세요 (^C) node bin/pack.js # No identity found for signing 에러는 무시하세요 cd dist/out/Medis-mas-x64/ open . # Finder가 열리고 Medis.app이 보일 겝니다. Medis를 소개합니다 간단하게 값 조회하고 편집하려고 Redis cli 클라이언트와 Redis command cheat sheet를 함께 띄워두고 떠듬떠듬 작업하다보니 더는 안 되겠어서 괜찮..
[ Database ] ER 다이어그램 / ERD 기호 및 표기법 데이터베이스를 다루는 과정에서 한 번쯤은 들어봤을 ​ERD. ​ 이번 게시글에서는 ERD에 대해 다뤄보자. ​ ​ ​ ​ ERD ' Entity Relationship Diagram ' ​ 흔히 E-R 다이어그램이라고 불리우며 ERD 라고 줄여 부르기도 한다. ​ 영어 약자 그대로 '​존재하고 있는 것(Entity)들의 관계(Relationship)을 나타낸 도표(Diagram)' 이다. ​ 여기서 말하는 존재하고 있는 것이란 데이터를 뜻하니 데이터들의 관계를 나타낸 도표인 셈이다. ​ 그럼 데이터의 관계를 어떻게 나타내는지 그림들을 참고해 이해해보자. ​ ​ 먼저 ERD의 규칙을 살펴보면 아래와 같다. A는 부모, B는 자식의 관계를 가진 ERD이다. 여기서 '~B로 구성되어 있다'라는 말이 살짝 헷갈..
JOIN 완전 정리 (INNER JOIN, OUTER JOIN, LEFT JOIN, RIGHT JOIN) 예제 테이블mysql> select * from demo_people; name phone pid Mr brown 01225 708225 1 Miss Smith 01225 899360 2 Mr Pullen 01380 724040 3 mysql> select * from demo_property; pid spid selling 1 1 Old House Fram 3 2 The Willows 3 3 Tali Trees 3 4 the Melksham Florist 4 5 Dun Roamin 1. 기본 JOIN (= INNER JOIN) - 기본적으로 JOIN은 교집합이다. mysql> select name, phone, selling from demo_people join demo_property on demo..
[Mysql/Mac] root 비밀번호 분실 시 초기화 프로젝트를 진행할 때 매일 RDS에 연결해서 쓴터라 오랜만에 root 계정의 DB에 접속했다. 역시 인간이란 망각의 동물..^^ 비밀번호를 잊어버리고 말았다! 비밀번호를 너무 자주 잊어버리는 탓에.. 기억하기위해 포스팅을 해보고자 한다. 개발환경 - Mac OS - homebrew로 mysql 설치 - mysql 버전: 8.0.16 비밀번호 초기화 및 변경 과정 1. mysql bin 파일이 있는 폴더로 이동한다. 보통은 /usr/local/mysql/bin 의 경로에 파일이 있지만 homebrew로 mysql을 설치했다면 경로가 조금 달라진다. /usr/local/opt/mysql/bin 로 이동한다. 2. mysql 데몬을 종료한다. 만약 켜져있다면 mysql.server stop 으로 종료시킨다. ..
[ORACLE] ORA-01031: insufficient privileges ORA-01031: insufficient privileges 패스워드 인증 방식으로 접속이 불가능한 계정으로 SQL Developer같은 클라이언트 프로그램으로 접속 할 경우 이와 같은 에러가 발생한다. SELECT * FROM v$pwfile_users; 패스워드 인증 방식으로 접속 가능한 계정이 어떤것이 있는지 확인 하는 쿼리. USERNAME SYSDB SYSOP SYSAS ------------------------------ ----- ----- ----- SYS TRUE TRUE FALSE 현재 관리가 계정인 SYS만이 패스워드 인증방식으로 접속 가능하것을 확인 할 수 있다. 관리자 계정으로 접속 한뒤 클라이언트 프로그램에서 접속할 계정의 권한을 바꿔주면 된다. GRANT sysdba TO ..
SQLDeveloper 오류: Locale not recoginized 오라클의 SQL 툴인 SQLDeveloper를 맥에서 사용할 때, Locale을 인식하지 못하는 에러가 발생할 수 있습니다. 이런 오류는 데이터베이스 커넥션 테스트 과정에서 주로 발생합니다. 특히 OSX를 버전 업그레이드한 다음에 빈번하게 발생합니다. SQLDeveloper에서 Locale를 인식하지 못하는 문제가 발생할 경우 해결하는 방법을 정리합니다. - SQLDeveloper이 커넥션 테스트 오류 (OS: OSX, SQLDeveloper 버전: 18.2.0.183) 위 그림은 SQLDeveloper를 실행한 후, 오라클 데이터베이스 접속 설정 후, 접속 테스트를 진행할 때 발생한 오류입니다. 에러가 발생한 실행 환경은 다음과 같습니다. OS: macOS Mojave (버전: 10.14) Java: ..
[MySQL] 문자열 자르기 SUBSTRING, SUBSTRING_INDEX & 활용 MySql, Mariadb의 SUBSTRING, SUBSTRING_INDEX 문자열 자르기 함수에 대해 알아보겠습니다. 추가로 SUBSTRING_INDEX를 활용하여 JAVA의 split처럼 문장열로 자르고 Index에 맞게 가져오는 방법을 설명하겠습니다. SUBSTRING 사용 방법 SUBSTRING(문자열, 시작 위치) SUBSTRING(문자열, 시작 위치, 시작 위치부터 가져올 문자수) 예제 SELECT SUBSTRING('123456789', 7); >> 789 SELECT SUBSTRING('123456789', -7); >> 3456789 SELECT SUBSTRING('123456789', 3, 5); >> 34567 SELECT SUBSTRING('123456789', -7, 3); >> ..
[MYSQL] sql_mode=only_full_group_by 에러 발생 * MySQLSyntaxErrorException 발생확인 com.mysql.jdbc.execptions.jdbc4.MYSQLSynctaxErrorException: Expression#1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'field' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by * 원인 MYSQL 5.7의 새로운 기능 중 SQL mode 강화 기능으로 인한 GROUP BY 문법오류발생 * 강화된 문법 안내 - ONLY_FULL_GRO..