오늘 오전 10시 35분 개발장비에서 발생한 오류를 처리한 것을 기록으로 남겨놓는다. 여기 기록으로 남겨놓을 걸 생각했으면 캡쳐나 좀 해놓을 것을(안타깝...) 개발팀으로부터 JAVA Code에서 아래와 같은 오류가 계속해서 발생한다는 연락이 서버관리자에게 왔다. Caused by: java.sql.SQLException: Can't create/write to file '/tmp/MYkBkOD0' (Errcode: 28 - No space left on device) 서버관리자는 1) 해당 디렉토리(/tmp)에 권한을 확인하고, 2) 해당 Disk의 남은 용량까지 확인했으나 아무런 문제가 없어보여 MySQL의 query를 수행하면서 발생하는 에러이기에 나에게 문의를 해왔다. 나 역시 서버관리자가 한 내..
간혹 서버에서 MySQL을 접속해야할 일이 있다.mysql -u 계정명 -p이정도면 무난하게 접속할 수 있는데,오늘 특정 서버에서 아래와 같은 메시지를 떨어뜨리며 접속이 되지 않는 상황 발생Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) 인터넷을 뒤져보면 대부분 아래와 같이 입력하라고 나온다.$ mysql -u 계정명 -p DB명 -S /var/lib/mysql/mysql.sock 그래서 몇번 해보다 보면 잘 안될거다. 저게 안되서 나온 에러 메시지니까.mysql을 절대 경로로 줘보기도 하고, DB명을 주기도 하고 빼보기도 하고 해도 안된다. 결론적으로는 mysql이 실행만 된다면 절대경로 안써도 상관없다..
Table 별 Size 확인 QuerySELECT table_name, table_rows, round(data_length/(1024*1024),2) as 'DATA_SIZE(MB)', round(index_length/(1024*1024),2) as 'INDEX_SIZE(MB)'FROM information_schema.TABLESwhere table_schema = '데이터베이스이름'GROUP BY table_name ORDER BY data_length DESC LIMIT 10; 막상 많이 사용량이 큰 Database를 찾고나니, 어떤 Table이 문제인지 찾고 싶을 때 사용.
Database별 Size 확인 QuerySELECTcount(*) NUM_OF_TABLE,table_schema,concat(round(sum(table_rows)/1000000,2),'M') rows,concat(round(sum(data_length)/(1024*1024*1024),2),'G') DATA,concat(round(sum(index_length)/(1024*1024*1024),2),'G') idx,concat(round(sum(data_length+index_length)/(1024*1024*1024),2),'G') total_size,round(sum(index_length)/sum(data_length),2) idxfracFROM information_schema.TABLESGROU..
mysql의 가장 기초적인 내용이지만 종종 까먹어서 기록해둔다. database 생성mysql> create schema '스키마 이름' default character set utf8; user 생성 및 권한 추가mysql> create user 'user 이름'@'host' identified by '암호';mysql> grant [권한] on '스키마 이름'.'테이블 이름' to 'user 이름'@'host';mysql> flush privileges; 참조1: '%'는 전체 접속 허용 'localhost'는 해당서버만 '192.168.122.%'의 경우 192.16.122.* 와 같은 의미 참조2: 권한은 [ ALL | ALTER | CREATE | DELETE | DROP | INSERT | S..
mysql cli에서는 SQL문의 마지막에 \G를 붙여서 보다 상세한 결과값을 볼 수 있는 옵션이 존재한다.(사실 내용은 크게 차이나지 않지만 항목별로 나눠서 표기해주니까 상세 정보를 보기엔 좋다.) 그런데 GUI Tool인 MySQL Workbench에서는 Query창에 \G를 넣게되면 오류를 발생시킨다. 그렇다고 \G를 넣지 않으면 한 열에 모든 내용을 다 출력하기에 결과를 확인하기에 매우 불편하다. 왜 이렇게 만들었을까? 를 한참을 고민하다가 결국 google의 힘을 빌어 방법을 찾았다.(이런 건 manual에 좀 넣어 놓으라고!!) 결국 GUI라는 점을 충실히 활용한 마우스 오른쪽 버튼이 답이었다. Viewer에서 보겠다고 선택하면 아래와 같이 상세화된 내용을 볼 수 있다.심지어 BLOB같은 경우..
- Total
- Today
- Yesterday
- version
- centos7
- error
- OSS
- MySQL
- tip
- Redhat
- Size
- db
- 태그를 입력해 주세요.
- It
- yum
- storage
- Windows
- Linux
- date
- dbms
- NTP
- Solaris
- centos
- Bit
- database
- OS
- cycle
- Java
- hostname
- rhel
- aix
- cpu
- query
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |