MariaDB4 [MariaDB] 마리아 DB 백업 및 복구 백업 전체 데이터베이스 백업 우선 DB 서버내 존재하는 모든 데이터베이스를 백업하고자 하면 터미널에서 다음과 같이 명령해주면 됩니다. mysqldump -u[아이디] -p[패스워드] --all-databases > [백업파일명].sql ex) mysqldump -ukyohoonsim -p1234 --all-databases > backup_all_db.sql 하나의 데이터베이스 백업 여러 데이터베이스 중에서 하나의 데이터베이스만 백업하고 싶다면 다음과 같이 명령해주면 됩니다. mysqldump -u[아이디] -p[패스워드] [데이터베이스명] > [백업파일명].sql ex) mysqldump -ukyohoonsim -p1234 test > backup_test_db.sql 복구 전체 데이터베이스 복구 백업.. 2021. 7. 21. [MariaDB] 마리아DB Lock 해제 컬럼 추가를 위해 Alter 명령어를 사용했는데, 테이블에 락(Lock)가 걸려 버렸다. 음? 원인은 둘째치고 빠르게 락 해제를 하기로 했다. 락(Lock) 조회 1 SHOW FULL PROCESSLIST; cs 역시 락이 존재 했다. 이젠 락을 제거하자 락(Lock) 제거 1 KILL 119979; cs 해당 Lock을 킬 하므로써, 막혀 있던 명령어들이 실행되는 것을 알 수 있다. 해결! 2021. 5. 30. [MariaDb] 마리아DB 테이블-뷰 View (MySql) 어느 날 화면 개발자가 동일 쿼리에서 데이터가 조회됐다가 안됬다가 한다고 한다. 음? 그럴 수가 있나? 그래서 쿼리를 받아 보았더니, 수집되는 테이블을 직접 조인하고 있는 쿼리였다. 해당 테이블은 데이터의 양도 많고, 수집되면서 Insert와 Update가 같은 트렉젝션에서 일어나는 테이블이었다. 예상컨데 분명 Update 하는 도중 Select를 해서 락(Lock)이 걸리는 경우라 생각했다. "음.. 그렇다면 테이블을 분리하는 게 좋은데 " 라는 의견을 냈지만 프로젝트 막바지에 테이블을 분리해서 관리하도록 하는 로직이 들어가는 것은 확실히 부담이 있다. 해서 생각한 것이 뷰를 사용하는 것이다. 뷰(view)는 일반 사용자 입장에서는 테이블과 동일하게 사용되는 객체이지만, 사실 별로 테이블로 봐도 무방하.. 2021. 5. 30. [MariaDB] 다중 In In은 여러 value 값으로 검색할 때 사용한다. 1 SELECT * FROM table WHERE id IN (1, 2, 3, 4) cs 하지만 두 컬럼이 unique 할 때, 여러 값을 동시에 가져오고 싶을 때!? 다중 in 이 필요 하다. 1 2 3 4 5 6 SELECT * FROM table WHERE (id1, id2) IN ( SELECT id1, id2 FROM table WHERE (id1=1 AND id2=2) OR (id1=3 AND id2=4) OR (id1=5 AND id2=6)); cs 뭔가 지저분하다. 좀 더 깔끔하게 하기 위해서 array 방식으로 할 수 없을까? 해서 해봤다. 1 2 3 SELECT * FROM table WHERE (id1, id2) IN ((id1=1 .. 2021. 5. 30. 이전 1 다음 반응형