No Image

Warning: mysql_connect(): Client does not support authentication protocol requested by server; consider upgrading MariaDB client in /home1/htdocs/apartzm/affisacc/php/acc_tongys.inc.php on line 188ERROR 1251: Client does not smysql_connect(): Client does not support authentication protocol requested by server; consider upgrading MySQL client

2016-07-26 KENNETH 0

mysql(mariadb) 접근시 mysql_connect(): Client does not support authentication protocol requested by server; consider upgrading MySQL client 또는 mysql_connect(): Client does not support authentication protocol requested by server; consider upgrading MariaDB client 오류가 발생한다면…   구버전의 mysql 클라이언트가 신 버전의 mysql 서버로 접근하는 경우 좀더 정확히는… mysql서버의 old_passwords 설정이 ”0(off)” 정책으로 운영되어 생성된 계정의 패스워드가 새로운 패스워드 정책을 사용하지만 클라이언트는 이를 지원하지 못하는 버전인 경우에 발생함 접근하고자 하는 유저의 패스워드를 구버전 형태로 변경해주면 된다. (서버의 old_passwords 옵션을 건드릴 필요는 없음…. 필요한 계정에 대해서만 처리해주면 됨) update user set password=old_password(‘변경할 패스워드’) where user=’변경 대상 유저’; flush privileges; 변경 대상 유저는 choilha, 변경할 패스워드는 “1234” 라고 한다면 update user set password=old_password(‘1234′) where user=’choilha’; 이렇게..   처리하면 됨…

No Image

mysqlbinlog: unknown variable ‘default-character-set=utf8’

2016-07-09 KENNETH 0

mysqlbinlog 로 확인좀 하려고 했더니 에러 발생 # mysqlbinlog mysql-bin.000021 mysqlbinlog: unknown variable ‘default-character-set=utf8’ 이유는 mysql-5.5.3 버전 부터인가 default-character-set 에서 character-set-server 로 변경되었기 때문이라고… 아니 그럼 애초에 구동시부터 문제라고 언급을 해주던가… 왜 멀쩡하게 구동은 해놓고서 명령어가 먹지 않도록…   아무튼 저 옵션 지시자를 수정해주거나..   mysqlbinlog –no-defaults mysql-bin.000021 로 해주면 되겠다…

No Image

log timestamp timezone in mysql-5.7

2016-05-12 KENNETH 1

mysql-5.7 사용중에 sql에 의한 time은 시스템 시간과 동일하게 잘 맞는데.. log(error, slow 등)파일의 timestamp만 내가 사용하는 KST 가 적용되지 않고 9시간 전인 UTC로 되어있다 이말이지… 그래서 찾아봤더니.. 5.7.2 부터 log_timestamps 가 추가되었데… ㅅㅂ 기본값이 UTC설정이라 log_timestamps=SYSTEM 이렇게 처리를 해줘야 한댄다…   출처 : http://dev.mysql.com/doc/refman/5.7/en/server-system-variables.html#sysvar_log_timestamps log_timestamps Introduced 5.7.2 Command-Line Format –log_timestamps=# System Variable Name log_timestamps Variable Scope Global Dynamic Variable Yes Permitted Values Type enumeration Default UTC Valid Values UTC SYSTEM This variable controls the timestamp time zone of error log messages, and of general query log and slow query log messages written to files. It does not affect the time zone of general query log and slow query log messages written to tables (mysql.general_log, mysql.slow_log). Rows retrieved from those tables can be converted from the local system time zone to any desired time zone with CONVERT_TZ() or by setting the session [ more… ]

No Image

mysql error : No data – zero rows fetched, selected, or processed

2016-04-05 KENNETH 0

프로시저를 생성해놓고 호출시에.. No data – zero rows fetched, selected, or processed 에러가 발생하는 경우가 있음. DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1; 구문을 프로시저에 추가해주면 된다고함… (이것은 내가 테스트 해본것은 아님.. 귀찮기도 하고.. ) 실사용은 아래 내용을 참고할 것 PS. mysql-5.6 으로 업데이트 하는 방법도 있다고함 (역시 내가 테스트 해본것은 아님.. 귀찮기도 했고.. ) 참고 : https://jirak.net/wp/mysql-fetch-cursor-%eb%ac%b8-%ec%82%ac%ec%9a%a9%eb%b0%a9%eb%b2%95/

No Image

MySQL Fetch Cursor 문 사용방법

2016-04-05 KENNETH 1

출처 : http://bizadmin.tistory.com/entry/MySQL-Fetch-Cursor-%EB%AC%B8-%EC%82%AC%EC%9A%A9%EB%B0%A9%EB%B2%95 작성자 : 불가사리 bluemount 아래 내용은 ”http://bizadmin.tistory.com/”에서 발췌한 내용입니다.   Mysql에서 커서(Fetch Cursor)를 사용할 때 아래와 같은 경고메세지를 얻는 경우가 있다. 1329: No data – zero rows fetched, selected, or processed 무슨 이유인지 커서가 다 돌지를 않고 중간에 멈춘거 같은 것을 보고 역시  Mysql 은 믿을 수가 없어 그런 느낌을 갖기도 했지만 역시 믿을 수 없는 건 나의 실력이었다. Mysql 의 커서(Cursor)를 충분히 분석하고 기능을 알아보려 한다. 커서는 기본적으로 커서(Cursor)를 돌면 어떤 데이타를 처리하는 것이 목적이다. 간단한 예제 수준만 알아서 해결이 안되는 경우 아래의 내용을 검토해 보자. 1. Fetch Cursor 기본 구조  : 아주 기초적 구조다. 이해가 안되면 외어라. CREATE PROCEDURE curdemo() BEGIN DECLARE done INT DEFAULT FALSE; DECLARE vRowCount INT DEFAULT 0 ; DECLARE vUserID varchar(20);   — 커서로 만들 데이타 값들 DECLARE cur1 CURSOR FOR SELECT Userid FROM Member;   — 커서가 마지막에 도착할 때의 상태값 DECLARE CONTINUE HANDLER [ more… ]