일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- c
- php
- 챗GPT
- BOF 원정대
- Javascript
- 파이썬
- hacking
- 웹해킹
- hackerschool
- 러닝스칼라
- Scala
- 리눅스
- ChatGPT
- BOF
- mysql
- 딥러닝
- deep learning
- 러닝 스칼라
- Shellcode
- flask
- c++
- Web
- webhacking
- 백엔드
- 인공지능
- Python
- 경제
- hackthissite
- Linux
- backend
- Today
- Total
목록개발 및 관련 자료/DB (8)
jam 블로그
mysql_set_charset('utf8','sql_connection'); 위의 문구를 넣어주면 됩니다.
like를 사용하여 문자열 검사시(정규식 또한) 대소문자를 구별하지 않습니다. binary로 된 테이블일 경우 대소문자를 구별하여 검색할 수 있다고 합니다. 테이블의 필드형을 binary로 변경해주셔도 되고 다음과 같이 쿼리를 짜도 됩니다. select * from table where BINARY(field) like '%test%'; 컬럼에 바이너리 함수를 주어서 검색하게 하면 됩니다. 출처 : http://phpschool.com/gnuboard4/bbs/board.php?bo_table=tipntech&wr_id=76015&sca=%B9%AE%B9%FD
다른 곳에서 검색하시면 transcation 관련 내용이 많습니다. 그 사용 중에 주의점 하나 적을까 합니다. 예제들을 보면 처음에 SET AUTOCOMMIT=0 이러한 부분이 있습니다. 이름 그대로 commit을 자동으로 해주지 않습니다. 그래서 예를들어 start transcation select * from test; update test set `id`='1'; commit 이런식일텐데.. 이 다음에 transcation을 끝났더라고 set autocommit=0이 1로 변하지 않습니다. 따라서 그 세션이 끝날때 까지는 직접 commit을 해주어야 합니다. 아니면 commit 후에 set autocommit = 1로 변경 후에 insert나 update 하시면 자동으로 commit을 합니다.
보통 쿼리 디버깅 할때 잠시 쓰기 위해서 설정 방법입니다. my.cnf를 고치지 않고 하는 방법입니다. 1) 현재 서버 변수 값 확인하기 query : show variables where Variable_name in ('version', 'log', 'general_log', 'general_log_file', 'log_output'); 2) 쿼리 로그 활성화 하기 query : set global general_log = 1; 3) 쿼리 로그 비활성화 하기 query : set global general_log = 0; * 로그가 쌓이는 부분은 1) 에서 나온 값중에 general_log_file의 값에 저장된 곳에 저장이 됩니다. [출처] mysql log 설정|작성자 박군
1. 백업 $> mysqldump -u [사용자아이디] -p 데이터베이스명 [테이블명] > 저장될 파일명 예) mysqldump -u kid1412 -p xe > xe.sql 이렇게 하면 xe database를 몽땅 덤프를 뜨게된다. 테이블만 덤프를 뜨고 싶다면 예) mysqldump -u kid1412 -p xe member_table > xe_member_table.sql 이렇게 하면 테이블만 덤프를 뜰 수 있다. 2. 복구하기 덤프 파일을 가지고 복구를 하는 방법도 간단하다. $> mysql -u [사용자아이디] -p 디비명 < 덤프파일명 예) mysql -ukamkami -p xe < xe.sql 실행 전에 xe이라는 database를 만들어놔야한다.