MySQL
[MYSQL] 계정 동시 접속자 차단 (max_user_connections )
데이터베이스 사용자계정을 체계적으로 관리하기 위해 mysql 에서 제공하는 파라미터 중 max_user_connections 을 활용해보기로 했다 max_user_connections 은 지정한 mysql 계정에 허용되는 최대 동시 연결 수 이다 -- 최대 커넥션 개수 조회 SELECT max_user_connections FROM mysql.user WHERE user='userid' AND host='%'; -- 최대 커넥션 개수 업데이트 UPDATE mysql.user SET max_user_connections = 1 WHERE user='userid' AND host='%';
![[MYSQL] SQL Error [1701] [42000]: Cannot truncate a table referenced in a foreign key constraint](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2F3VUyo%2FbtrS6iAdmOk%2FAAAAAAAAAAAAAAAAAAAAAEC_WMtEKNsCFfiH_Ta6iebHI3BmmsiKwBEVcA07lsy2%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1753973999%26allow_ip%3D%26allow_referer%3D%26signature%3Diw8rOixzREpTxiDL5w10v5AyADg%253D)
[MYSQL] SQL Error [1701] [42000]: Cannot truncate a table referenced in a foreign key constraint
TRUNCATE TABLE 명령어로 데이터 삭제 하려는데 아래 처럼 오류가 난다.. [에러내용] " SQL Error [1701] [42000]: Cannot truncate a table referenced in a foreign key constraint (`DB명`.`참조하는테이블`, CONSTRAINT `외래키명` FOREIGN KEY (`외래키`) REFERENCES `DB명`.`테이블명` (`컬럼`)) " [발생원인] 외래키 제약조건에 따른 에러로 FOREIGN KEY (외래키) 로 참조되고 있는 TABLE의 데이터를 삭제하고자 할때 나는 에러이다 [해결] 데이터 삭제 전에 외래키(Foreign Key) 를 무시하도록 설정 하여 해결 1. 외래키(Foreign Key) 체크 하지 않는다는 설정..
![[MYSQL] DBeaver (디비버) 사용자 계정 생성 추가 및 권한 부여](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FRToXo%2FbtrSHKXDZLB%2FAAAAAAAAAAAAAAAAAAAAAK4rHPwzfgiEJE8t7zbrJieG2A3_BBKEd5qr8GavJn9N%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1753973999%26allow_ip%3D%26allow_referer%3D%26signature%3DS9BqRIDhdQ3POwg8M5I9FEjhq6s%253D)
[MYSQL] DBeaver (디비버) 사용자 계정 생성 추가 및 권한 부여
DBeaver (디비버) 툴로 사용자 계정을 추가 하고 권한 설정 까지 해보도록 하겠다 사용자 (user) 계정 추가 전 db 설치와 데이터베이스 연결이 되지 않았을 경우는 아래 링크를 참고 해주면 될 것 같다 참고- DBeaver 설치 및 실행 [DBeaver] 설치 및 실행 (Window10)회사에서 다양한 DBMS를 확장함에 따라 통합으로 사용하면서 좋은 무료 툴 (tool) 이 필요 했다. 주로 mssql , mysql 을 사용하고 있고 oracle도 확장 하는 상황이다 MYSQL은 HeidiSQL도 사용해 보고 Workbanch도hotinme35.tistory.com- DBeaver 설치 후 데이터베이스 인스턴스 연결 [MYSQL] DBeaver 데이터베이스 연결지난번 DBeaver 설치 및 실..
![[MYSQL] 사용자 (USER) 계정 권한 설정](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FWjQM8%2FbtrPL310xu1%2FAAAAAAAAAAAAAAAAAAAAAJyM5rdmhtirKCL3iDh8VTzjsML1JHK8_XQoeKLv1Q3-%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1753973999%26allow_ip%3D%26allow_referer%3D%26signature%3DniR643t0BFK0qI5VI86%252Fbsj9Aes%253D)
[MYSQL] 사용자 (USER) 계정 권한 설정
"MYSQL 사용자 계정을 추가 하고 권한 설정을 하려고 할때 어디까지 권한을 줘야 할까?" 상황에 따라 다르긴 하겠지만 개발자와 책임질수 있는 설계자 DBA 의 권한은 구분되어야 한다고 생각한다 개발자 DELETE, INSERT, SELECT, UPDATE 설계자 ALTER, CREATE, DELETE, DROP, INDEX, INSERT, SELECT, UPDATE, DELETE, INSERT, SELECT, UPDATE DBA ALL
![[MYSQL] DBeaver 데이터베이스(DB) 생성](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2F2TZAm%2FbtrQaKTGJ9W%2FAAAAAAAAAAAAAAAAAAAAAIGUcPXVmOreIFRus7DtkTw4f0Phln6X9VYbmjg4CiK5%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1753973999%26allow_ip%3D%26allow_referer%3D%26signature%3DPvfDKkcD5yjwAkMF9JY9e7Ot3%252Fw%253D)
[MYSQL] DBeaver 데이터베이스(DB) 생성
지난번 설치한 DB Tool DBeaver (디비버) 로 데이터베이스(database) 생성을 해보도록 하겠다. 쿼리로 데이터베이스를 생성 해도 되지만 쉽게 접근 가능한 디자인 툴이 있으니 디비버 툴로 데이터 베이스 생성을 해보았다. 참고 - DBeaver 설치 및 실행 [DBeaver] 설치 및 실행 (Window10) 회사에서 다양한 DBMS를 확장함에 따라 통합으로 사용하면서 좋은 무료 툴 (tool) 이 필요 했다. 주로 mssql , mysql 을 사용하고 있고 oracle도 확장 하는 상황이다 MYSQL은 HeidiSQL도 사용해 보고 Workbanch도 hotinme35.tistory.com - DBeaver 설치 후 데이터베이스 연결 [MYSQL] DBeaver 데이터베이스 연결 지난번 D..
![[MYSQL] DBeaver 데이터베이스 연결](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FSOnvf%2FbtrQa4j8qlU%2FAAAAAAAAAAAAAAAAAAAAAPZezIISKZyixngIojrx09tg_rIRngdVClZUeTWpGrKE%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1753973999%26allow_ip%3D%26allow_referer%3D%26signature%3DriG%252FGjmEKSG39SJyDhMwCd582GE%253D)
[MYSQL] DBeaver 데이터베이스 연결
지난번 DBeaver 설치 및 실행을 했으니 mysql 데이터베이스 (database) 연결 하고자 한다 참고 - DBeaver 설치 및 실행 [DBeaver] 설치 및 실행 (Window10) 회사에서 다양한 DBMS를 확장함에 따라 통합으로 사용하면서 좋은 무료 툴 (tool) 이 필요 했다. 주로 mssql , mysql 을 사용하고 있고 oracle도 확장 하는 상황이다 MYSQL은 HeidiSQL도 사용해 보고 Workbanch도 hotinme35.tistory.com 1. 데이터베이스 연결 - [DBeaver 실행] > [데이터베이스 선택] > [새 데이터베이스 연결 클릭] 2. 데이터베이스 선택 - 연결 하고자 하는 데이터베이스 선택 후 [다음 클릭] 3. 데이터베이스 정보 입력 - [데이터..
[MYSQL] 컬럼 추가
디자인 툴로 컬럼을 추가해도 되지만 쿼리(query) 로 사용하면 더 편할 때가 있다. 테이블에 컬럼 추가 할 경우 쿼리를 정리해보았다. 컬럼추가 ALTER TABLE 테이블명 ADD COLUMN 컬럼명 데이터타입 DEFAULT 기본값 컬럼위치
![[DBeaver] 설치 및 실행 (Window10)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2Fcttb4Z%2FbtrMmiage3v%2FAAAAAAAAAAAAAAAAAAAAAJtjFYLwRpF5Wen-JxRjhi9oefDQdXrh5UueFFO3Xrdr%2Fimg.jpg%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1753973999%26allow_ip%3D%26allow_referer%3D%26signature%3DPPuJ4hZSBzG9GJB%252FuBI%252BDWIGQfw%253D)
[DBeaver] 설치 및 실행 (Window10)
회사에서 다양한 DBMS를 확장함에 따라 통합으로 사용하면서 좋은 무료 툴 (tool) 이 필요 했다. 주로 mssql , mysql 을 사용하고 있고 oracle도 확장 하는 상황이다 MYSQL은 HeidiSQL도 사용해 보고 Workbanch도 사용 해보았지만 DBeaver 만큼 효율적인 TOOL은 없는거 같아 소개 해볼까 경험상 DBeaver가 좋은 점은 ssh 적용이 가능하다는거다 (HeidiSQL은 지원이 안되니 참고) Tool 설치 하기 dbeaver 사이트에 접속해서 다운로드 (https://dbeaver.io/download/) Download | DBeaver Community Download Tested and verified for MS Windows, Linux and Mac OS ..

SQL 정렬 가독성 높여주는 웹사이트
바쁘게 작업을 하다 보면 여의치 않은 상황으로 정렬이 안맞거나 할때가 있다. 혼자 보는 쿼리는 상관없지만 상부에게 보고 하거나 외부로 전달 할때 사소한 부분이 신경 쓰일때가 있다. 내가 이용하는 SQL Formatter 사이트를 공유 할까 한다 사이트 들어가보면 알겠지만 어렵지 않다. 작성한 쿼리를 입력하고 DATABASE 와 OUTPUT 선택 후 포맷을 누르면 자동 변환된다. 그래도 가장 좋은건 정렬 규약이 습관화 되어 작업하는게 제일 좋은듯 하다.. 참고 SQL 가동성 높여주는 사이트 url : https://www.dpriver.com/pp/sqlformat.htm Instant SQL Formatter www.dpriver.com
[MYSQL] 실행쿼리 강제 종료 (KILL)
MYSQL 운영시 잘 수행 되던 쿼리 가 테이블 Lock 이 발생하여 지연 및 장애가 발생 하는경우가 종종 있다. Lock 상태인 프로세스만 조회 하여 강제 종료 해보도록 하겠다. 1. Lock 상태인 프로세스 확인 SELECT* FROMinformation_schema.processlist WHERESTATE LIKE 'Locked'; 2. KILL KILL 프로세스 ID 3. Lock 걸린 프로세스 일괄 강제 종료 SELECTCONCAT('KILL ',id,';') Kill_msg FROMinformation_schema.processlist WHERESTATE LIKE 'Locked'; 4. information_schema.processlist 테이블 정보 확인 컬럼 내용 ID 프로세스 ID US..