분류 전체보기

반응형

혹시 평범한 이 인터넷 연결 끊김 화면에 게임이 숨겨져 있단 사실 알고 계셨나요?

아 모르셨다고요?! 알고 계셨는데 정식 명칭이 T-Rex Runner 라는걸 모르셨다고요?!

 

그래서 준비했습니다. T-Rex Runner 게임! (부제 : 크롬(Chrome) 인터넷 연결 끊김 시 나오는 공룡 게임)

 

 

조건


인터넷 연결 끊김시에는 Chrome 브라우저에서만 나오고 검색하면 모든 브라우저에서 즐길 수 있습니다.

 

 

게임 설명


게임 시작 키 : Space bar (스페이스 바)

 

게임 조작 키 : ↑ (점프 키, jump) , ↓ (숙이기, down)

                    

게임을 시작하게되면 갑자기 공룡이 사하라 사막 같은 곳을 막 달리기 시작합니다.

그러다 선인장,새,기타 방해꾼들이 등장해 공룡의 달리기를 방해하는 그런 게임입니다.

 

공룡은 선인장,새,기타 방해꾼에 닿게 되면 공룡이 사망하면서 게임이 끝납니다.   

공룡이 선인장에 죽은 모습

공룡이 달리는 동안 우측 상단에 점수가 쌓이게 됩니다.

이걸로 실력을 볼 수 있겠죠~

 

한 땐, 이 게임이 너무 재밌어서 인터넷을 일부러 끊고 즐기고 했는데요.

멍청한 짓이였습니다. 왜냐하면 " T-Rex Runner "라는 정식 명칭에 게임이 있었습니다. 

 

 

인터넷 연결한 상태에서 T-Rex Runner 공룡 게임하기


1. 구글에 T-Rex Runner 검색 → 제일 상단에 T-Rex Game. 클릭 

2. 게임 즐기기

 

 

주로 이 게임을 하는 이유


1. 인터넷 연결 끊겼을 때 , 기다리는 용도
2. 친구 1:1 밥 내기 (스코어 기준)
3. 퇴근 10분 전 재미로

4. 귀여운 공룡이 보고 싶을 때

 

제 최고 기록은 2356점인데 1등이 99888점이네요...

반응형
반응형

MyBatis 속성

 

<bind>

 

개념


외부에서 전달된 파라미터를 이용하여 변수 생성하는 엘리먼트

동적 쿼리 변수를 생성할 때 사용한다.

 

 

조건


MyBatis version 3.2.3 이상

 

 

문법


동적 쿼리문 안에 작성

<select | insert | update | delete>

<bind name="지정할 변수이름" value="파라미터 값+부가 옵션"/>

</select | insert | update | delete>

name 속성 : 자기가 지정할 변수 이름

value 속성 : 받아오는 파라미터 값 + 추가 문법 (이때 문법은 OGNL(Object Graph Navigation Language) 표현식을 사용한다.)

 

 

실전 예시 1. Like 문 문법

Parameter 01 : id

Parameter 02 : subject

<select id="getTest" resultType="board">

SELECT * FROM board

<bind name="ids" value="'%'+id+'%'"/>
<bind name="subjects" value="'%'+subject+'%'"/>
<where>
<if test="id != null"> AND id like #{ids}</if>
<if test="subject != null"> AND subject like #{subjects} </if>
</where>

</select>

 

이런식으로 value 속성에 받아온 파라미터를 작성하고 추가 문법을 덧붙이면 됩니다.

 

실제 실행된 쿼리

SELECT * FROM board WHERE id like '%2%' AND subject like '%test%'

실전 예시 2. Map 사용 문법

<bind name="a" value="hMap.get('a'.toString())"/>

<bind name="b" value="hMap.get('b'.toString())"/>

<bind name="c" value="hMap.get('c'.toString())"/>

실전 예시 3. 메서드(Method) 사용 문법

 

bind 사용 전

<select id="selectPerson" parameterType="String" resultType="hashmap">
  SELECT * FROM PERSON WHERE FIRST_NAME like #{name.upperCase() + '%'} 
</select> 

bind 사용 후

<select id="selectPerson" parameterType="String" resultType="hashmap">
  <bind name="nameStartsWith" value="_parameter.getName().upperCase() + '%'"/>
  SELECT * FROM PERSON WHERE FIRST_NAME like #{nameStartsWith} 
</select>
반응형
반응형

0.Window -> Show view -> Other... -> General -> Problems 탭 추가 -> errors 내용 확인

 

내용에 따른 해결법


1.Java version 불일치

Java compiler level does not match the version of the installed Java project facet.

 

2.Tomcat version 불일치

apache tomcat 8.5 does not match the version of the installed Java project facet.

 

공통 해결


1. 해당 프로젝트 우 클릭 → Java Build Path → Libraries 탭 확인

 

2.해당 프로젝트 우 클릭 → Project Facets 확인

2-1.Java version 확인(맞추기)

2-2.Runtimes 탭 Tomcat version 확인(맞추기)


3.Maven Update 하기

An error occurred while filtering resources "ProjectName" line 1 Maven Java EE Configuration Problem

 

해결 : 해당 프로젝트 우 클릭 → Maven Update Project...


 

 

 

X가 아니라 ! 가 떠 있다면?


1.import 한 jar 파일의 경로 문제

2. 유효하지 않은 파일이나 디렉터리를 참조하고 있는 경우

 

해결 : https://java119.tistory.com/17?category=812265

 

[Eclipse] 잘되던 프로젝트가 갑자기 안될때(feat.HTTP 404)

이 글은 이클립스(IDE) 기반으로 설명합니다. 어제까지 잘되던 프로젝트가 내일 출근하고 보니 맛(?)이 갈 때가 있습니다. 바아로 따라해봅시다 1.Project 2.Clean… 1.Servers 탭 2.Tomcat version Server..

java119.tistory.com

 

그럼에도 해결 되지 않는다면, Problems 탭에 에러 내용을 가지고 검색하셔서 해결하시면 됩니다.

반응형
반응형

JSP


<select id="dynamicId">
<option value="apple">사과</option>
<option value="kiwifruit">키위</option>
<option value="Korean melon">참외</option>
</select>

 

 

JavaScript


$(target).val(option value).trigger('change');

$('#dynamicId').val('kiwifruit').trigger('change');

 

실전 예제


목표 : 페이지 진입 시 셀렉트 박스에 두 번째, 세 번째 값을 선택되어 있게 만드는 것.

 

JSP

<select id="dynamicId">
<option value="apple">사과</option>
<option value="kiwifruit">키위</option>
<option value="Korean melon">참외</option>
</select>

<p id="resultId"></p>

<select class="dynamicClass">
<option value="apple">사과</option>
<option value="kiwifruit">키위</option>
<option value="Korean melon">참외</option>
</select>

<p id="resultClass"></p>

 

JavaScript

setTimeout(function(){
test();
},0)

function test(){
	
	var html = '';
	
	$('#dynamicId').val('kiwifruit').trigger('change');
	
	html = $('#dynamicId').val();
	
	$('#resultId').append(html);

	$('.dynamicClass').val('Korean melon').trigger('change');
	
	html = $('.dynamicClass').val();
	
	$('#resultClass').append(html);
	
}

 

View


 

※ 주의 : test() 메소드를 그냥 실행하면 적용되지 않습니다. setTimeout으로 감싸줘야 합니다.

반응형
반응형

오류 내용

Several ports (8080, 8009) required by Tomcat v8.5 Server at localhost are already in use. 
The server may already be running in another process, or a system process may be using the port. 
To start this server you will need to stop the other process or change the port number(s).

 

주요 원인


원인 01 : 톰캣이 실행하려고 할 때 이를 무시하고, 다시 Run (톰캣 재시작)을 눌렀을 때

자세한 원인 : 톰캣을 실행 하려고 준비 중이었는데 무시하고 바로 또 Run를 할 경우 포트가 제대로 꺼지지 않았기 때문에 오류가 뜬다.
원래는 톰캣 실행이 다 끝나고 또 실행하면 겹치지않고 기존에 톰캣이 종료되고 새 프로세스를 가진 톰캣이 시작되는 게 정상이다.

 

원인 02 : 또 다른 프로그램이 8080 or 8009 등 톰캣에 필요한 포트를 점유하고 있기 때문입니다.

 

원인 03 : 이클립스(혹은 다른 IDE) 프로그램 강제종료 후 톰캣 재실행했을 때 좀비 프로세스가 남아있는 경우.

 

 

해결 (윈도우(Windows GUI))


GUI (Graphical User Interface)로 해당 프로세스 끄기

 

작업 관리자 창 실행

0.Windows 키 + R → 실행창에 taskmgr

javaw.exe 프로세스 종료
1. 작업 관리자 세부 정보 javaw.exe 작업 끝내기(강제 종료)


해결 (윈도우(Windows CLI))


CLI (Command Line Interface)로 해당 프로세스 끄기

명령 프롬프트 실행
0.Windows 키 + R 실행창에 cmd 

포트 찾기 명령어


특정 포트가 열려 있는지 확인
1.netstat -na | findstr 8009 

열려 있는 포트의 PID 확인
2.netstat -nao | findstr 8009

PID(Process IDentifier) 찾기 
3.tasklist |findstr "PID"

 

PID 프로세스 종료 (죽이기)
4.taskkill /f /pid "PID"

★ 참고 : "PID" 부분에 PID를 적으시고 명령어를 실행하면 됩니다. PID는 계속 변경됩니다.


해결 (리눅스(linux))


리눅스 (linux) 해당 프로세스 끄기


열려있는 포트 확인
1.netstat -tnlp

 

특정 포트(8080) 상태 확인
2.netstat -nap | grep 8080

 

특정 포트(8080) 종료
3.fuser -k -n tcp 8080


※ 주의 : 리눅스는 윈도우랑 다르게 PID가 아닌 port로 명령어를 실행합니다.

반응형

'Tomcat' 카테고리의 다른 글

[Tomcat] JNDI(Java Naming and Directory Interface) 설정 총 정리  (1) 2020.04.19
반응형

System 오류


1. ERROR 2002 : can't connect to local mysql server through socket '/var/lib/mysql/mysql.sock' (2) (13) (111) 

 

이 문제는 메시지 내용은 같으나, 뒤에 숫자에 따라 해결법이 다릅니다.
오류 메시지를 정확히 보셔야 합니다. (2) (13) (111) 

 

※ 주의 : mysql.sock 관련 에러가 뜨는 원인은 굉~장히 다양하므로 명확한 해결책을 제시하기 어렵습니다.

 

최선책을 올립니다.


ERROR 2002 : can't connect to local mysql server through socket '/var/lib/mysql/mysql.sock' (2)

원인 : 
1. MySQL 데몬이 기동이 되어 있지 않은 경우 (MySQL 서버가 실행되지 않은 것)
2. my.cnf 파일 자체가 깨졌을 경우 해당 메시지를 만난다.
3. mysql.sock를 시스템이 못 찾거나 경로가 정확하지 않아서 발생하는 오류

해결 :

mysql.sock 위치 찾기
find / -name mysql.sock

/usr/local/mysql/bin/mysql -u root -p mysql -S /var/lib/mysql/mysql.sock
or 둘 중 택 1
cd /usr/local/mysql 
./bin/mysql -u root -p mysql -S /var/lib/mysql/mysql.sock

 

원인02 :

MySQL 유저로 접근했을 경우 mysql.sock 파일이 있는 디렉토리에 접근을 할 수 없어서 나오는 오류

 

해결 02 :

service mysqld stop
chmod 755 -R /var/lib/mysql/
chown mysql:mysql -R /var/lib/mysql/
service mysqld start

ERROR 2002 : can't connect to local mysql server through socket '/var/lib/mysql/mysql.sock' (13)

원인 : /usr/local/mysql 디렉터리 권한 문제

해결 : 

chmod 777 /usr/local/mysql

ERROR 2002 : can't connect to local mysql server through socket '/var/lib/mysql/mysql.sock' (111)

 

원인 : 심볼릭 링크가 잘못 됐을 경우

해결 : 

ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock

 

그 외 mysql.sock 문제 관련 해결책 : my.cnf 파일에 mysql.sock 경로 지정하기

vi /etc/my.cnf
## /etc/my.cnf
[client]
socket = /var/lib/mysql/mysql.sock
[mysqld]
socket = /var/lib/mysql/mysql.sock

ERROR  access to database denied (using password: YES)

 

원인 : 데이터베이스에 접근할 수 없는 권한을 가진 user 가 접속한 경우. 

 

해결 : 

GRANT ALL PRIVILEGES ON *.*TO '권한 허용할 유저 아이디'@'%' IDENTIFIED BY 'password' with GRANT OPTION;
FLUSH PRIVILEGES;

 

원인02 : 데이터베이스 로그인 시도에 접속 비밀번호가 틀린 경우

 

해결 02 : 비밀번호를 올바르게 입력한다.


ERROR 1044 : access denied for user : 'abc@ localhost' to database 'abcdb' 


원인 : 
'abc' 유저에 대해서 'abcdb'라는 이름의 데이터베이스에 접근할 수 없기 때문에 발생하는 에러. 

원인 발생 예시 : mysql> use abcdb


해결 : 'abc'라는 유저가 'abcdb'에 접근할 수 있도록 접근 허용 SQL 문법을 실행한다.

grant all privileges on userdb.* to 'abc'@'localhost' identified by '패스워드' with grant option;

ERROR 1045 : access denied for user : 'root@localhost'; (using password: no)


원인 : root 패스워드가 설정되어 있는데, root 패스워드 없이 접근을 시도했을 때 나타나는 오류입니다.


해결 : 패스워드를 올바르게 입력해서 접속한다.

mysql -u root (X) mysql -u root -p (O) 패스워드 입력 후 접근

ERROR 1006 : Can't create database 'abcdb'. (errno: 28) 


원인 : 하드디스크 파티션 용량이 꽉 참. 


해결 : 하드디스크 용량 정리

하드 디스크 용량 정리 팁
우선 순위인 /tmp 디렉토리 안에 데이터 먼저 제거 한다.
cd /tmp
rm -rf *
service mysqld restart

ERROR 1175 : You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column To disable safe mode, toggle the option in Preferences

원인 : Safe Update 모드 상태로 설정되어 있어서 UPDATE시 KEY 칼럼을 이용하지 않을 경우 업데이트할 수 없음.

해결 : Safe Update 모드 해제 명령어 실행

해결 예시 :  SET SQL_SAFE_UPDATES =0; 

위에 해당 사항이 없는 경우
MySQL 시스템 문제 에러 로그 보는 법

(tail or more or vi) /etc/log/mysqld.log 혹은 /var/log/mysqld.log

SQL 오류


SQL 오류 (1054) : Unknown column 'sss' in 'where clause' 

 

원인 : where 문에 문법이 잘못됐을 때

원인 발생 예시 : select * from table where col1 = sss

 

해결 : where 절에 문자열 일 경우에 따옴표로 비교해야 합니다.

해결 예시 select * from table where col1 = 'sss'

SQL 오류 (1061) : Duplicate key name 'abcidx'


원인 : 'abcidx' 인덱스 이름이 중복될 경우


해결 : 인덱스 이름을 변경해준다.


SQL 오류 (1062) : Duplicate entry '1' for key 1


원인 : PK(Primary key)가 걸려있는 칼럼에 이미 있는 데이터를 동일하게 넣을 경우

원인 발생 예시 : '1'이라는 숫자 데이터가 있는데 또 '1' 을 넣을 경우

 

 

해결 : 이미 있는 데이터를 피해서 다른 값의 데이터를 넣는다.


SQL 오류 (1064) : You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'card_company WHERE amount_of_payment = ss' at line 1

 

원인 : SQL 문법이 틀렸을 경우 (진짜 많이 보는 오류 내용) 

 

해결 : 틀린 SQL 문법을 찾는다. 끝에 line n번째라고 적혀있는데 이 라인을 잘 봐야 합니다.


SQL 오류 (1072) : Key column 'abc' doesn't exist in table


원인 : 'abc' 란 칼럼이 존재하지 않는데, 'abc'로 인덱스를 생성할 경우


해결 : 존재하는 칼럼에 인덱스를 부여한다.


SQL 오류 (1093) : Table 'TESTNAME' is specified twice, both as a target for 'INSERT' and as a separate source for data

 

원인 : 하나의 SQL 구문에 같은 테이블 명을 사용할 경우. (INSERT, UPDATE, DELETE)

원인 발생 예시 : INSERT INTO TESTNAME (ID,NAME,ORDER_NO)
VALUES (1,'Java119',( SELECT IFNULL(MAX(ORDER_NO), 0) + 1 FROM TESTNAME WHERE ID = 1))

 

해결 : 서브 쿼리 부분에 별칭(alias)을 설정해준다.

해결 예시 : INSERT INTO TESTNAME (ID,NAME,ORDER_NO) 
VALUES (1,'Java119',( SELECT IFNULL(MAX(ORDER_NO), 0) + 1 FROM TESTNAME AS tableAlias WHERE ID = 1))

SQL 오류 (1136) : Column count doesn't match value count at row 1 

 

원인 : INSERT문이 테이블 열의 수와 값의 수가 일치하지 않을 경우

원인 발생 예시 : INSERT INTO people (id,NAME,age) VALUES(1,'java119');

 

해결 : INSERT문 사용 시 테이블 열의 수와 값의 수를 일치시킨다.

해결 예시 : INSERT INTO people (id,NAME,age) VALUES(1,'java119',24);

SQL 오류 (1222) : The used SELECT statements have a different number of columns

 

원인 : union 사용 시 각 테이블의 칼럼이 서로 일치하지 않는 경우

원인 발생 예시 :

SELECT id,name FROM people 
UNION  
SELECT id FROM people2

 

해결 : union 사용 테이블들의 칼럼 수를 맞춰준다.

해결 예시 :

SELECT id FROM people  
UNION   
SELECT id FROM people2

SQL 오류 (1242) : Subquery returns more than 1 row

 

원인 : 서브 쿼리가 하나 이상의 레코드를 리턴하는 문장들에 대해 발생하는 에러

 

해결 : 서브 쿼리의 결과가 하나의 레코드를 반환하도록 문법 수정

해결 02 : ANY 사용해 해결한 케이스 https://ra2kstar.tistory.com/52 


 

이 글은 계속 업데이트됩니다.

해결법이 올바르지 않거나, 다른 방법으로 해결하신 분들은 피드백 남겨주시면 정말 감사하겠습니다.^^

 

그 외 오류 참고 자료

MariaDB 오류 코드 https://mariadb.com/kb/en/mariadb-error-codes/

 

그 외 오류들 (스왑)

더보기

MySQL Error Codes
Error 1000 - SQLSTATE: HY000 (ER_HASHCHK) hashchk

Error 1001 - SQLSTATE: HY000 (ER_NISAMCHK) isamchk

Error 1002 - SQLSTATE: HY000 (ER_NO) NO

Error 1003 - SQLSTATE: HY000 (ER_YES) YES

Error 1004 - SQLSTATE: HY000 (ER_CANT_CREATE_FILE) Can't create file '%s' (errno: %d)

Error 1005 - SQLSTATE: HY000 (ER_CANT_CREATE_TABLE) Can't create table '%s' (errno: %d)

Error 1006 - SQLSTATE: HY000 (ER_CANT_CREATE_DB) Can't create database '%s' (errno: %d)

Error 1007 - SQLSTATE: HY000 (ER_DB_CREATE_EXISTS) Can't create database '%s'; database exists

Error 1008 - SQLSTATE: HY000 (ER_DB_DROP_EXISTS) Can't drop database '%s'; database doesn't exist

Error 1009 - SQLSTATE: HY000 (ER_DB_DROP_DELETE) Error dropping database (can't delete '%s', errno: %d)

Error 1010 - SQLSTATE: HY000 (ER_DB_DROP_RMDIR) Error dropping database (can't rmdir '%s', errno: %d)

Error 1011 - SQLSTATE: HY000 (ER_CANT_DELETE_FILE) Error on delete of '%s' (errno: %d)

Error 1012 - SQLSTATE: HY000 (ER_CANT_FIND_SYSTEM_REC) Can't read record in system table

Error 1013 - SQLSTATE: HY000 (ER_CANT_GET_STAT) Can't get status of '%s' (errno: %d)

Error 1014 - SQLSTATE: HY000 (ER_CANT_GET_WD) Can't get working directory (errno: %d)

Error 1015 - SQLSTATE: HY000 (ER_CANT_LOCK) Can't lock file (errno: %d)

Error 1016 - SQLSTATE: HY000 (ER_CANT_OPEN_FILE) Can't open file: '%s' (errno: %d)

Error 1017 - SQLSTATE: HY000 (ER_FILE_NOT_FOUND) Can't find file: '%s' (errno: %d)

Error 1018 - SQLSTATE: HY000 (ER_CANT_READ_DIR) Can't read dir of '%s' (errno: %d)

Error 1019 - SQLSTATE: HY000 (ER_CANT_SET_WD) Can't change dir to '%s' (errno: %d)

Error 1020 - SQLSTATE: HY000 (ER_CHECKREAD) Record has changed since last read in table '%s'

Error 1021 - SQLSTATE: HY000 (ER_DISK_FULL) Disk full (%s); waiting for someone to free some space...

Error 1022 - SQLSTATE: 23000 (ER_DUP_KEY) Can't write; duplicate key in table '%s'

Error 1023 - SQLSTATE: HY000 (ER_ERROR_ON_CLOSE) Error on close of '%s' (errno: %d)

Error 1024 - SQLSTATE: HY000 (ER_ERROR_ON_READ) Error reading file '%s' (errno: %d)

Error 1025 - SQLSTATE: HY000 (ER_ERROR_ON_RENAME) Error on rename of '%s' to '%s' (errno: %d)

Error 1026 - SQLSTATE: HY000 (ER_ERROR_ON_WRITE) Error writing file '%s' (errno: %d)

Error 1027 - SQLSTATE: HY000 (ER_FILE_USED) '%s' is locked against change

Error 1028 - SQLSTATE: HY000 (ER_FILSORT_ABORT) Sort aborted

Error 1029 - SQLSTATE: HY000 (ER_FORM_NOT_FOUND) View '%s' doesn't exist for '%s'

Error 1030 - SQLSTATE: HY000 (ER_GET_ERRNO) Got error %d from storage engine

Error 1031 - SQLSTATE: HY000 (ER_ILLEGAL_HA) Table storage engine for '%s' doesn't have this option

Error 1032 - SQLSTATE: HY000 (ER_KEY_NOT_FOUND) Can't find record in '%s'

Error 1033 - SQLSTATE: HY000 (ER_NOT_FORM_FILE) Incorrect information in file: '%s'

Error 1034 - SQLSTATE: HY000 (ER_NOT_KEYFILE) Incorrect key file for table '%s'; try to repair it

Error 1035 - SQLSTATE: HY000 (ER_OLD_KEYFILE) Old key file for table '%s'; repair it!

Error 1036 - SQLSTATE: HY000 (ER_OPEN_AS_READONLY) Table '%s' is read only

Error 1037 - SQLSTATE: HY001 (ER_OUTOFMEMORY) Out of memory; restart server and try again (needed %d bytes)

Error 1038 - SQLSTATE: HY001 (ER_OUT_OF_SORTMEMORY) Out of sort memory; increase server sort buffer size

Error 1039 - SQLSTATE: HY000 (ER_UNEXPECTED_EOF) Unexpected EOF found when reading file '%s' (errno: %d)

Error 1040 - SQLSTATE: 08004 (ER_CON_COUNT_ERROR) Too many connections

Error 1041 - SQLSTATE: HY000 (ER_OUT_OF_RESOURCES) Out of memory; check if mysqld or some other process uses all available memory; if not, you may have to use 'ulimit' to allow mysqld to use more memory or you can add more swap space

Error 1042 - SQLSTATE: 08S01 (ER_BAD_HOST_ERROR) Can't get hostname for your address

Error 1043 - SQLSTATE: 08S01 (ER_HANDSHAKE_ERROR) Bad handshake

Error 1044 - SQLSTATE: 42000 (ER_DBACCESS_DENIED_ERROR) Access denied for user '%s'@'%s' to database '%s'

Error 1045 - SQLSTATE: 28000 (ER_ACCESS_DENIED_ERROR) Access denied for user '%s'@'%s' (using password: %s)

Error 1046 - SQLSTATE: 3D000 (ER_NO_DB_ERROR) No database selected

Error 1047 - SQLSTATE: 08S01 (ER_UNKNOWN_COM_ERROR) Unknown command

Error 1048 - SQLSTATE: 23000 (ER_BAD_NULL_ERROR) Column '%s' cannot be null

Error 1049 - SQLSTATE: 42000 (ER_BAD_DB_ERROR) Unknown database '%s'

Error 1050 - SQLSTATE: 42S01 (ER_TABLE_EXISTS_ERROR) Table '%s' already exists

Error 1051 - SQLSTATE: 42S02 (ER_BAD_TABLE_ERROR) Unknown table '%s'

Error 1052 - SQLSTATE: 23000 (ER_NON_UNIQ_ERROR) Column '%s' in %s is ambiguous

Error 1053 - SQLSTATE: 08S01 (ER_SERVER_SHUTDOWN) Server shutdown in progress

Error 1054 - SQLSTATE: 42S22 (ER_BAD_FIELD_ERROR) Unknown column '%s' in '%s'

Error 1055 - SQLSTATE: 42000 (ER_WRONG_FIELD_WITH_GROUP) '%s' isn't in GROUP BY

Error 1056 - SQLSTATE: 42000 (ER_WRONG_GROUP_FIELD) Can't group on '%s'

Error 1057 - SQLSTATE: 42000 (ER_WRONG_SUM_SELECT) Statement has sum functions and columns in same statement

Error 1058 - SQLSTATE: 21S01 (ER_WRONG_VALUE_COUNT) Column count doesn't match value count

Error 1059 - SQLSTATE: 42000 (ER_TOO_LONG_IDENT) Identifier name '%s' is too long

Error 1060 - SQLSTATE: 42S21 (ER_DUP_FIELDNAME) Duplicate column name '%s'

Error 1061 - SQLSTATE: 42000 (ER_DUP_KEYNAME) Duplicate key name '%s'

Error 1062 - SQLSTATE: 23000 (ER_DUP_ENTRY) Duplicate entry '%s' for key %d

Error 1063 - SQLSTATE: 42000 (ER_WRONG_FIELD_SPEC) Incorrect column specifier for column '%s'

Error 1064 - SQLSTATE: 42000 (ER_PARSE_ERROR) %s near '%s' at line %d

Error 1065 - SQLSTATE: HY000 (ER_EMPTY_QUERY) Query was empty

Error 1066 - SQLSTATE: 42000 (ER_NONUNIQ_TABLE) Not unique table/alias: '%s'

Error 1067 - SQLSTATE: 42000 (ER_INVALID_DEFAULT) Invalid default value for '%s'

Error 1068 - SQLSTATE: 42000 (ER_MULTIPLE_PRI_KEY) Multiple primary key defined

Error 1069 - SQLSTATE: 42000 (ER_TOO_MANY_KEYS) Too many keys specified; max %d keys allowed

Error 1070 - SQLSTATE: 42000 (ER_TOO_MANY_KEY_PARTS) Too many key parts specified; max %d parts allowed

Error 1071 - SQLSTATE: 42000 (ER_TOO_LONG_KEY) Specified key was too long; max key length is %d bytes

Error 1072 - SQLSTATE: 42000 (ER_KEY_COLUMN_DOES_NOT_EXITS) Key column '%s' doesn't exist in table

Error 1073 - SQLSTATE: 42000 (ER_BLOB_USED_AS_KEY) BLOB column '%s' can't be used in key specification with the used table type

Error 1074 - SQLSTATE: 42000 (ER_TOO_BIG_FIELDLENGTH) Column length too big for column '%s' (max = %d); use BLOB instead

Error 1075 - SQLSTATE: 42000 (ER_WRONG_AUTO_KEY) Incorrect table definition; there can be only one auto column and it must be defined as a key

Error 1076 - SQLSTATE: HY000 (ER_READY) %s: ready for connections. Version: '%s' socket: '%s' port: %d

Error 1077 - SQLSTATE: HY000 (ER_NORMAL_SHUTDOWN) %s: Normal shutdown

Error 1078 - SQLSTATE: HY000 (ER_GOT_SIGNAL) %s: Got signal %d. Aborting!

Error 1079 - SQLSTATE: HY000 (ER_SHUTDOWN_COMPLETE) %s: Shutdown complete

Error 1080 - SQLSTATE: 08S01 (ER_FORCING_CLOSE) %s: Forcing close of thread %ld user: '%s'

Error 1081 - SQLSTATE: 08S01 (ER_IPSOCK_ERROR) Can't create IP socket

Error 1082 - SQLSTATE: 42S12 (ER_NO_SUCH_INDEX) Table '%s' has no index like the one used in CREATE INDEX; recreate the table

Error 1083 - SQLSTATE: 42000 (ER_WRONG_FIELD_TERMINATORS) Field separator argument is not what is expected; check the manual

Error 1084 - SQLSTATE: 42000 (ER_BLOBS_AND_NO_TERMINATED) You can't use fixed rowlength with BLOBs; please use 'fields terminated by'

Error 1085 - SQLSTATE: HY000 (ER_TEXTFILE_NOT_READABLE) The file '%s' must be in the database directory or be readable by all

Error 1086 - SQLSTATE: HY000 (ER_FILE_EXISTS_ERROR) File '%s' already exists

Error 1087 - SQLSTATE: HY000 (ER_LOAD_INFO) Records: %ld Deleted: %ld Skipped: %ld Warnings: %ld

Error 1088 - SQLSTATE: HY000 (ER_ALTER_INFO) Records: %ld Duplicates: %ld

Error 1089 - SQLSTATE: HY000 (ER_WRONG_SUB_KEY) Incorrect sub part key; the used key part isn't a string, the used length is longer than the key part, or the storage engine doesn't support unique sub keys

Error 1090 - SQLSTATE: 42000 (ER_CANT_REMOVE_ALL_FIELDS) You can't delete all columns with ALTER TABLE; use DROP TABLE instead

Error 1091 - SQLSTATE: 42000 (ER_CANT_DROP_FIELD_OR_KEY) Can't DROP '%s'; check that column/key exists

Error 1092 - SQLSTATE: HY000 (ER_INSERT_INFO) Records: %ld Duplicates: %ld Warnings: %ld

Error 1093 - SQLSTATE: HY000 (ER_UPDATE_TABLE_USED) You can't specify target table '%s' for update in FROM clause

Error 1094 - SQLSTATE: HY000 (ER_NO_SUCH_THREAD) Unknown thread id: %lu

Error 1095 - SQLSTATE: HY000 (ER_KILL_DENIED_ERROR) You are not owner of thread %lu

Error 1096 - SQLSTATE: HY000 (ER_NO_TABLES_USED) No tables used

Error 1097 - SQLSTATE: HY000 (ER_TOO_BIG_SET) Too many strings for column %s and SET

Error 1098 - SQLSTATE: HY000 (ER_NO_UNIQUE_LOGFILE) Can't generate a unique log-filename %s.(1-999)

Error 1099 - SQLSTATE: HY000 (ER_TABLE_NOT_LOCKED_FOR_WRITE) Table '%s' was locked with a READ lock and can't be updated

Error 1100 - SQLSTATE: HY000 (ER_TABLE_NOT_LOCKED) Table '%s' was not locked with LOCK TABLES

Error 1101 - SQLSTATE: 42000 (ER_BLOB_CANT_HAVE_DEFAULT) BLOB/TEXT column '%s' can't have a default value

Error 1102 - SQLSTATE: 42000 (ER_WRONG_DB_NAME) Incorrect database name '%s'

Error 1103 - SQLSTATE: 42000 (ER_WRONG_TABLE_NAME) Incorrect table name '%s'

Error 1104 - SQLSTATE: 42000 (ER_TOO_BIG_SELECT) The SELECT would examine more than MAX_JOIN_SIZE rows; check your WHERE and use SET SQL_BIG_SELECTS=1 or SET SQL_MAX_JOIN_SIZE=# if the SELECT is okay

Error 1105 - SQLSTATE: HY000 (ER_UNKNOWN_ERROR) Unknown error

Error 1106 - SQLSTATE: 42000 (ER_UNKNOWN_PROCEDURE) Unknown procedure '%s'

Error 1107 - SQLSTATE: 42000 (ER_WRONG_PARAMCOUNT_TO_PROCEDURE) Incorrect parameter count to procedure '%s'

Error 1108 - SQLSTATE: HY000 (ER_WRONG_PARAMETERS_TO_PROCEDURE) Incorrect parameters to procedure '%s'

Error 1109 - SQLSTATE: 42S02 (ER_UNKNOWN_TABLE) Unknown table '%s' in %s

Error 1110 - SQLSTATE: 42000 (ER_FIELD_SPECIFIED_TWICE) Column '%s' specified twice

Error 1111 - SQLSTATE: HY000 (ER_INVALID_GROUP_FUNC_USE) Invalid use of group function

Error 1112 - SQLSTATE: 42000 (ER_UNSUPPORTED_EXTENSION) Table '%s' uses an extension that doesn't exist in this MySQL version

Error 1113 - SQLSTATE: 42000 (ER_TABLE_MUST_HAVE_COLUMNS) A table must have at least 1 column

Error 1114 - SQLSTATE: HY000 (ER_RECORD_FILE_FULL) The table '%s' is full

Error 1115 - SQLSTATE: 42000 (ER_UNKNOWN_CHARACTER_SET) Unknown character set: '%s'

Error 1116 - SQLSTATE: HY000 (ER_TOO_MANY_TABLES) Too many tables; MySQL can only use %d tables in a join

Error 1117 - SQLSTATE: HY000 (ER_TOO_MANY_FIELDS) Too many columns

Error 1118 - SQLSTATE: 42000 (ER_TOO_BIG_ROWSIZE) Row size too large. The maximum row size for the used table type, not counting BLOBs, is %ld. You have to change some columns to TEXT or BLOBs

Error 1119 - SQLSTATE: HY000 (ER_STACK_OVERRUN) Thread stack overrun: Used: %ld of a %ld stack. Use 'mysqld -O thread_stack=#' to specify a bigger stack if needed

Error 1120 - SQLSTATE: 42000 (ER_WRONG_OUTER_JOIN) Cross dependency found in OUTER JOIN; examine your ON conditions

Error 1121 - SQLSTATE: 42000 (ER_NULL_COLUMN_IN_INDEX) Column '%s' is used with UNIQUE or INDEX but is not defined as NOT NULL

Error 1122 - SQLSTATE: HY000 (ER_CANT_FIND_UDF) Can't load function '%s'

Error 1123 - SQLSTATE: HY000 (ER_CANT_INITIALIZE_UDF) Can't initialize function '%s'; %s

Error 1124 - SQLSTATE: HY000 (ER_UDF_NO_PATHS) No paths allowed for shared library

Error 1125 - SQLSTATE: HY000 (ER_UDF_EXISTS) Function '%s' already exists

Error 1126 - SQLSTATE: HY000 (ER_CANT_OPEN_LIBRARY) Can't open shared library '%s' (errno: %d %s)

Error 1127 - SQLSTATE: HY000 (ER_CANT_FIND_DL_ENTRY) Can't find function '%s' in library'

Error 1128 - SQLSTATE: HY000 (ER_FUNCTION_NOT_DEFINED) Function '%s' is not defined

Error 1129 - SQLSTATE: HY000 (ER_HOST_IS_BLOCKED) Host '%s' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'

Error 1130 - SQLSTATE: HY000 (ER_HOST_NOT_PRIVILEGED) Host '%s' is not allowed to connect to this MySQL server

Error 1131 - SQLSTATE: 42000 (ER_PASSWORD_ANONYMOUS_USER) You are using MySQL as an anonymous user and anonymous users are not allowed to change passwords

Error 1132 - SQLSTATE: 42000 (ER_PASSWORD_NOT_ALLOWED) You must have privileges to update tables in the mysql database to be able to change passwords for others

Error 1133 - SQLSTATE: 42000 (ER_PASSWORD_NO_MATCH) Can't find any matching row in the user table

Error 1134 - SQLSTATE: HY000 (ER_UPDATE_INFO) Rows matched: %ld Changed: %ld Warnings: %ld

Error 1135 - SQLSTATE: HY000 (ER_CANT_CREATE_THREAD) Can't create a new thread (errno %d); if you are not out of available memory, you can consult the manual for a possible OS-dependent bug

Error 1136 - SQLSTATE: 21S01 (ER_WRONG_VALUE_COUNT_ON_ROW) Column count doesn't match value count at row %ld

Error 1137 - SQLSTATE: HY000 (ER_CANT_REOPEN_TABLE) Can't reopen table: '%s'

Error 1138 - SQLSTATE: 42000 (ER_INVALID_USE_OF_NULL) Invalid use of NULL value

Error 1139 - SQLSTATE: 42000 (ER_REGEXP_ERROR) Got error '%s' from regexp

Error 1140 - SQLSTATE: 42000 (ER_MIX_OF_GROUP_FUNC_AND_FIELDS) Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clause

Error 1141 - SQLSTATE: 42000 (ER_NONEXISTING_GRANT) There is no such grant defined for user '%s' on host '%s'

Error 1142 - SQLSTATE: 42000 (ER_TABLEACCESS_DENIED_ERROR) %s command denied to user '%s'@'%s' for table '%s'

Error 1143 - SQLSTATE: 42000 (ER_COLUMNACCESS_DENIED_ERROR) %s command denied to user '%s'@'%s' for column '%s' in table '%s'

Error 1144 - SQLSTATE: 42000 (ER_ILLEGAL_GRANT_FOR_TABLE) Illegal GRANT/REVOKE command; please consult the manual to see which privileges can be used

Error 1145 - SQLSTATE: 42000 (ER_GRANT_WRONG_HOST_OR_USER) The host or user argument to GRANT is too long

Error 1146 - SQLSTATE: 42S02 (ER_NO_SUCH_TABLE) Table '%s.%s' doesn't exist

Error 1147 - SQLSTATE: 42000 (ER_NONEXISTING_TABLE_GRANT) There is no such grant defined for user '%s' on host '%s' on table '%s'

Error 1148 - SQLSTATE: 42000 (ER_NOT_ALLOWED_COMMAND) The used command is not allowed with this MySQL version

Error 1149 - SQLSTATE: 42000 (ER_SYNTAX_ERROR) You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use

Error 1150 - SQLSTATE: HY000 (ER_DELAYED_CANT_CHANGE_LOCK) Delayed insert thread couldn't get requested lock for table %s

Error 1151 - SQLSTATE: HY000 (ER_TOO_MANY_DELAYED_THREADS) Too many delayed threads in use

Error 1152 - SQLSTATE: 08S01 (ER_ABORTING_CONNECTION) Aborted connection %ld to db: '%s' user: '%s' (%s)

Error 1153 - SQLSTATE: 08S01 (ER_NET_PACKET_TOO_LARGE) Got a packet bigger than 'max_allowed_packet' bytes

Error 1154 - SQLSTATE: 08S01 (ER_NET_READ_ERROR_FROM_PIPE) Got a read error from the connection pipe

Error 1155 - SQLSTATE: 08S01 (ER_NET_FCNTL_ERROR) Got an error from fcntl()

Error 1156 - SQLSTATE: 08S01 (ER_NET_PACKETS_OUT_OF_ORDER) Got packets out of order

Error 1157 - SQLSTATE: 08S01 (ER_NET_UNCOMPRESS_ERROR) Couldn't uncompress communication packet

Error 1158 - SQLSTATE: 08S01 (ER_NET_READ_ERROR) Got an error reading communication packets

Error 1159 - SQLSTATE: 08S01 (ER_NET_READ_INTERRUPTED) Got timeout reading communication packets

Error 1160 - SQLSTATE: 08S01 (ER_NET_ERROR_ON_WRITE) Got an error writing communication packets

Error 1161 - SQLSTATE: 08S01 (ER_NET_WRITE_INTERRUPTED) Got timeout writing communication packets

Error 1162 - SQLSTATE: 42000 (ER_TOO_LONG_STRING) Result string is longer than 'max_allowed_packet' bytes

Error 1163 - SQLSTATE: 42000 (ER_TABLE_CANT_HANDLE_BLOB) The used table type doesn't support BLOB/TEXT columns

Error 1164 - SQLSTATE: 42000 (ER_TABLE_CANT_HANDLE_AUTO_INCREMENT) The used table type doesn't support AUTO_INCREMENT columns

Error 1165 - SQLSTATE: HY000 (ER_DELAYED_INSERT_TABLE_LOCKED) INSERT DELAYED can't be used with table '%s' because it is locked with LOCK TABLES

Error 1166 - SQLSTATE: 42000 (ER_WRONG_COLUMN_NAME) Incorrect column name '%s'

Error 1167 - SQLSTATE: 42000 (ER_WRONG_KEY_COLUMN) The used storage engine can't index column '%s'

Error 1168 - SQLSTATE: HY000 (ER_WRONG_MRG_TABLE) All tables in the MERGE table are not identically defined

Error 1169 - SQLSTATE: 23000 (ER_DUP_UNIQUE) Can't write, because of unique constraint, to table '%s'

Error 1170 - SQLSTATE: 42000 (ER_BLOB_KEY_WITHOUT_LENGTH) BLOB/TEXT column '%s' used in key specification without a key length

Error 1171 - SQLSTATE: 42000 (ER_PRIMARY_CANT_HAVE_NULL) All parts of a PRIMARY KEY must be NOT NULL; if you need NULL in a key, use UNIQUE instead

Error 1172 - SQLSTATE: 42000 (ER_TOO_MANY_ROWS) Result consisted of more than one row

Error 1173 - SQLSTATE: 42000 (ER_REQUIRES_PRIMARY_KEY) This table type requires a primary key

Error 1174 - SQLSTATE: HY000 (ER_NO_RAID_COMPILED) This version of MySQL is not compiled with RAID support

Error 1175 - SQLSTATE: HY000 (ER_UPDATE_WITHOUT_KEY_IN_SAFE_MODE) You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column

Error 1176 - SQLSTATE: HY000 (ER_KEY_DOES_NOT_EXITS) Key '%s' doesn't exist in table '%s'

Error 1177 - SQLSTATE: 42000 (ER_CHECK_NO_SUCH_TABLE) Can't open table

Error 1178 - SQLSTATE: 42000 (ER_CHECK_NOT_IMPLEMENTED) The storage engine for the table doesn't support %s

Error 1179 - SQLSTATE: 25000 (ER_CANT_DO_THIS_DURING_AN_TRANSACTION) You are not allowed to execute this command in a transaction

Error 1180 - SQLSTATE: HY000 (ER_ERROR_DURING_COMMIT) Got error %d during COMMIT

Error 1181 - SQLSTATE: HY000 (ER_ERROR_DURING_ROLLBACK) Got error %d during ROLLBACK

Error 1182 - SQLSTATE: HY000 (ER_ERROR_DURING_FLUSH_LOGS) Got error %d during FLUSH_LOGS

Error 1183 - SQLSTATE: HY000 (ER_ERROR_DURING_CHECKPOINT) Got error %d during CHECKPOINT

Error 1184 - SQLSTATE: 08S01 (ER_NEW_ABORTING_CONNECTION) Aborted connection %ld to db: '%s' user: '%s' host: `%s' (%s)

Error 1185 - SQLSTATE: HY000 (ER_DUMP_NOT_IMPLEMENTED) The storage engine for the table does not support binary table dump

Error 1186 - SQLSTATE: HY000 (ER_FLUSH_MASTER_BINLOG_CLOSED) Binlog closed, cannot RESET MASTER

Error 1187 - SQLSTATE: HY000 (ER_INDEX_REBUILD) Failed rebuilding the index of dumped table '%s'

Error 1188 - SQLSTATE: HY000 (ER_MASTER) Error from master: '%s'

Error 1189 - SQLSTATE: 08S01 (ER_MASTER_NET_READ) Net error reading from master

Error 1190 - SQLSTATE: 08S01 (ER_MASTER_NET_WRITE) Net error writing to master

Error 1191 - SQLSTATE: HY000 (ER_FT_MATCHING_KEY_NOT_FOUND) Can't find FULLTEXT index matching the column list

Error 1192 - SQLSTATE: HY000 (ER_LOCK_OR_ACTIVE_TRANSACTION) Can't execute the given command because you have active locked tables or an active transaction

Error 1193 - SQLSTATE: HY000 (ER_UNKNOWN_SYSTEM_VARIABLE) Unknown system variable '%s'

Error 1194 - SQLSTATE: HY000 (ER_CRASHED_ON_USAGE) Table '%s' is marked as crashed and should be repaired

Error 1195 - SQLSTATE: HY000 (ER_CRASHED_ON_REPAIR) Table '%s' is marked as crashed and last (automatic?) repair failed

Error 1196 - SQLSTATE: HY000 (ER_WARNING_NOT_COMPLETE_ROLLBACK) Some non-transactional changed tables couldn't be rolled back

Error 1197 - SQLSTATE: HY000 (ER_TRANS_CACHE_FULL) Multi-statement transaction required more than 'max_binlog_cache_size' bytes of storage; increase this mysqld variable and try again

Error 1198 - SQLSTATE: HY000 (ER_SLAVE_MUST_STOP) This operation cannot be performed with a running slave; run STOP SLAVE first

Error 1199 - SQLSTATE: HY000 (ER_SLAVE_NOT_RUNNING) This operation requires a running slave; configure slave and do START SLAVE

Error 1200 - SQLSTATE: HY000 (ER_BAD_SLAVE) The server is not configured as slave; fix in config file or with CHANGE MASTER TO

Error 1201 - SQLSTATE: HY000 (ER_MASTER_INFO) Could not initialize master info structure; more error messages can be found in the MySQL error log

Error 1202 - SQLSTATE: HY000 (ER_SLAVE_THREAD) Could not create slave thread; check system resources

Error 1203 - SQLSTATE: 42000 (ER_TOO_MANY_USER_CONNECTIONS) User %s has already more than 'max_user_connections' active connections

Error 1204 - SQLSTATE: HY000 (ER_SET_CONSTANTS_ONLY) You may only use constant expressions with SET

Error 1205 - SQLSTATE: HY000 (ER_LOCK_WAIT_TIMEOUT) Lock wait timeout exceeded; try restarting transaction

Error 1206 - SQLSTATE: HY000 (ER_LOCK_TABLE_FULL) The total number of locks exceeds the lock table size

Error 1207 - SQLSTATE: 25000 (ER_READ_ONLY_TRANSACTION) Update locks cannot be acquired during a READ UNCOMMITTED transaction

Error 1208 - SQLSTATE: HY000 (ER_DROP_DB_WITH_READ_LOCK) DROP DATABASE not allowed while thread is holding global read lock

Error 1209 - SQLSTATE: HY000 (ER_CREATE_DB_WITH_READ_LOCK) CREATE DATABASE not allowed while thread is holding global read lock

Error 1210 - SQLSTATE: HY000 (ER_WRONG_ARGUMENTS) Incorrect arguments to %s

Error 1211 - SQLSTATE: 42000 (ER_NO_PERMISSION_TO_CREATE_USER) '%s'@'%s' is not allowed to create new users

Error 1212 - SQLSTATE: HY000 (ER_UNION_TABLES_IN_DIFFERENT_DIR) Incorrect table definition; all MERGE tables must be in the same database

Error 1213 - SQLSTATE: 40001 (ER_LOCK_DEADLOCK) Deadlock found when trying to get lock; try restarting transaction

Error 1214 - SQLSTATE: HY000 (ER_TABLE_CANT_HANDLE_FT) The used table type doesn't support FULLTEXT indexes

Error 1215 - SQLSTATE: HY000 (ER_CANNOT_ADD_FOREIGN) Cannot add foreign key constraint

Error 1216 - SQLSTATE: 23000 (ER_NO_REFERENCED_ROW) Cannot add or update a child row: a foreign key constraint fails

Error 1217 - SQLSTATE: 23000 (ER_ROW_IS_REFERENCED) Cannot delete or update a parent row: a foreign key constraint fails

Error 1218 - SQLSTATE: 08S01 (ER_CONNECT_TO_MASTER) Error connecting to master: %s

Error 1219 - SQLSTATE: HY000 (ER_QUERY_ON_MASTER) Error running query on master: %s

Error 1220 - SQLSTATE: HY000 (ER_ERROR_WHEN_EXECUTING_COMMAND) Error when executing command %s: %s

Error 1221 - SQLSTATE: HY000 (ER_WRONG_USAGE) Incorrect usage of %s and %s

Error 1222 - SQLSTATE: 21000 (ER_WRONG_NUMBER_OF_COLUMNS_IN_SELECT) The used SELECT statements have a different number of columns

Error 1223 - SQLSTATE: HY000 (ER_CANT_UPDATE_WITH_READLOCK) Can't execute the query because you have a conflicting read lock

Error 1224 - SQLSTATE: HY000 (ER_MIXING_NOT_ALLOWED) Mixing of transactional and non-transactional tables is disabled

Error 1225 - SQLSTATE: HY000 (ER_DUP_ARGUMENT) Option '%s' used twice in statement

Error 1226 - SQLSTATE: 42000 (ER_USER_LIMIT_REACHED) User '%s' has exceeded the '%s' resource (current value: %ld)

Error 1227 - SQLSTATE: HY000 (ER_SPECIFIC_ACCESS_DENIED_ERROR) Access denied; you need the %s privilege for this operation

Error 1228 - SQLSTATE: HY000 (ER_LOCAL_VARIABLE) Variable '%s' is a SESSION variable and can't be used with SET GLOBAL

Error 1229 - SQLSTATE: HY000 (ER_GLOBAL_VARIABLE) Variable '%s' is a GLOBAL variable and should be set with SET GLOBAL

Error 1230 - SQLSTATE: 42000 (ER_NO_DEFAULT) Variable '%s' doesn't have a default value

Error 1231 - SQLSTATE: 42000 (ER_WRONG_VALUE_FOR_VAR) Variable '%s' can't be set to the value of '%s'

Error 1232 - SQLSTATE: 42000 (ER_WRONG_TYPE_FOR_VAR) Incorrect argument type to variable '%s'

Error 1233 - SQLSTATE: HY000 (ER_VAR_CANT_BE_READ) Variable '%s' can only be set, not read

Error 1234 - SQLSTATE: 42000 (ER_CANT_USE_OPTION_HERE) Incorrect usage/placement of '%s'

Error 1235 - SQLSTATE: 42000 (ER_NOT_SUPPORTED_YET) This version of MySQL doesn't yet support '%s'

Error 1236 - SQLSTATE: HY000 (ER_MASTER_FATAL_ERROR_READING_BINLOG) Got fatal error %d: '%s' from master when reading data from binary log

Error 1237 - SQLSTATE: HY000 (ER_SLAVE_IGNORED_TABLE) Slave SQL thread ignored the query because of replicate-*-table rules

Error 1238 - SQLSTATE: HY000 (ER_INCORRECT_GLOBAL_LOCAL_VAR) Variable '%s' is a %s variable

Error 1239 - SQLSTATE: 42000 (ER_WRONG_FK_DEF) Incorrect foreign key definition for '%s': %s

Error 1240 - SQLSTATE: HY000 (ER_KEY_REF_DO_NOT_MATCH_TABLE_REF) Key reference and table reference don't match

Error 1241 - SQLSTATE: 21000 (ER_OPERAND_COLUMNS) Operand should contain %d column(s)

Error 1242 - SQLSTATE: 21000 (ER_SUBQUERY_NO_1_ROW) Subquery returns more than 1 row

Error 1243 - SQLSTATE: HY000 (ER_UNKNOWN_STMT_HANDLER) Unknown prepared statement handler (%.*s) given to %s

Error 1244 - SQLSTATE: HY000 (ER_CORRUPT_HELP_DB) Help database is corrupt or does not exist

Error 1245 - SQLSTATE: HY000 (ER_CYCLIC_REFERENCE) Cyclic reference on subqueries

Error 1246 - SQLSTATE: HY000 (ER_AUTO_CONVERT) Converting column '%s' from %s to %s

Error 1247 - SQLSTATE: 42S22 (ER_ILLEGAL_REFERENCE) Reference '%s' not supported (%s)

Error 1248 - SQLSTATE: 42000 (ER_DERIVED_MUST_HAVE_ALIAS) Every derived table must have its own alias

Error 1249 - SQLSTATE: 01000 (ER_SELECT_REDUCED) Select %u was reduced during optimization

Error 1250 - SQLSTATE: 42000 (ER_TABLENAME_NOT_ALLOWED_HERE) Table '%s' from one of the SELECTs cannot be used in %s

Error 1251 - SQLSTATE: 08004 (ER_NOT_SUPPORTED_AUTH_MODE) Client does not support authentication protocol requested by server; consider upgrading MySQL client

Error 1252 - SQLSTATE: 42000 (ER_SPATIAL_CANT_HAVE_NULL) All parts of a SPATIAL index must be NOT NULL

Error 1253 - SQLSTATE: 42000 (ER_COLLATION_CHARSET_MISMATCH) COLLATION '%s' is not valid for CHARACTER SET '%s'

Error 1254 - SQLSTATE: HY000 (ER_SLAVE_WAS_RUNNING) Slave is already running

Error 1255 - SQLSTATE: HY000 (ER_SLAVE_WAS_NOT_RUNNING) Slave has already been stopped

Error 1256 - SQLSTATE: HY000 (ER_TOO_BIG_FOR_UNCOMPRESS) Uncompressed data size too large; the maximum size is %d (probably, length of uncompressed data was corrupted)

Error 1257 - SQLSTATE: HY000 (ER_ZLIB_Z_MEM_ERROR) ZLIB: Not enough memory

Error 1258 - SQLSTATE: HY000 (ER_ZLIB_Z_BUF_ERROR) ZLIB: Not enough room in the output buffer (probably, length of uncompressed data was corrupted)

Error 1259 - SQLSTATE: HY000 (ER_ZLIB_Z_DATA_ERROR) ZLIB: Input data corrupted

Error 1260 - SQLSTATE: HY000 (ER_CUT_VALUE_GROUP_CONCAT) %d line(s) were cut by GROUP_CONCAT()

Error 1261 - SQLSTATE: 01000 (ER_WARN_TOO_FEW_RECORDS) Row %ld doesn't contain data for all columns

Error 1262 - SQLSTATE: 01000 (ER_WARN_TOO_MANY_RECORDS) Row %ld was truncated; it contained more data than there were input columns

Error 1263 - SQLSTATE: 01000 (ER_WARN_NULL_TO_NOTNULL) Data truncated; NULL supplied to NOT NULL column '%s' at row %ld

Error 1264 - SQLSTATE: 01000 (ER_WARN_DATA_OUT_OF_RANGE) Data truncated; out of range for column '%s' at row %ld

Error 1265 - SQLSTATE: 01000 (ER_WARN_DATA_TRUNCATED) Data truncated for column '%s' at row %ld

Error 1266 - SQLSTATE: HY000 (ER_WARN_USING_OTHER_HANDLER) Using storage engine %s for table '%s'

Error 1267 - SQLSTATE: HY000 (ER_CANT_AGGREGATE_2COLLATIONS) Illegal mix of collations (%s,%s) and (%s,%s) for operation '%s'

Error 1268 - SQLSTATE: HY000 (ER_DROP_USER) Can't drop one or more of the requested users

Error 1269 - SQLSTATE: HY000 (ER_REVOKE_GRANTS) Can't revoke all privileges, grant for one or more of the requested users

Error 1270 - SQLSTATE: HY000 (ER_CANT_AGGREGATE_3COLLATIONS) Illegal mix of collations (%s,%s), (%s,%s), (%s,%s) for operation '%s'

Error 1271 - SQLSTATE: HY000 (ER_CANT_AGGREGATE_NCOLLATIONS) Illegal mix of collations for operation '%s'

Error 1272 - SQLSTATE: HY000 (ER_VARIABLE_IS_NOT_STRUCT) Variable '%s' is not a variable component (can't be used as XXXX.variable_name)

Error 1273 - SQLSTATE: HY000 (ER_UNKNOWN_COLLATION) Unknown collation: '%s'

Error 1274 - SQLSTATE: HY000 (ER_SLAVE_IGNORED_SSL_PARAMS) SSL parameters in CHANGE MASTER are ignored because this MySQL slave was compiled without SSL support; they can be used later if MySQL slave with SSL is started

Error 1275 - SQLSTATE: HY000 (ER_SERVER_IS_IN_SECURE_AUTH_MODE) Server is running in --secure-auth mode, but '%s'@'%s' has a password in the old format; please change the password to the new format

Error 1276 - SQLSTATE: HY000 (ER_WARN_FIELD_RESOLVED) Field or reference '%s%s%s%s%s' of SELECT #%d was resolved in SELECT #%d

Error 1277 - SQLSTATE: HY000 (ER_BAD_SLAVE_UNTIL_COND) Incorrect parameter or combination of parameters for START SLAVE UNTIL

Error 1278 - SQLSTATE: HY000 (ER_MISSING_SKIP_SLAVE) It is recommended to use --skip-slave-start when doing step-by-step replication with START SLAVE UNTIL; otherwise, you will get problems if you get an unexpected slave's mysqld restart

Error 1279 - SQLSTATE: HY000 (ER_UNTIL_COND_IGNORED) SQL thread is not to be started so UNTIL options are ignored

Error 1280 - SQLSTATE: 42000 (ER_WRONG_NAME_FOR_INDEX) Incorrect index name '%s'

Error 1281 - SQLSTATE: 42000 (ER_WRONG_NAME_FOR_CATALOG) Incorrect catalog name '%s'

Error 1282 - SQLSTATE: HY000 (ER_WARN_QC_RESIZE) Query cache failed to set size %lu; new query cache size is %lu

Error 1283 - SQLSTATE: HY000 (ER_BAD_FT_COLUMN) Column '%s' cannot be part of FULLTEXT index

Error 1284 - SQLSTATE: HY000 (ER_UNKNOWN_KEY_CACHE) Unknown key cache '%s'

Error 1285 - SQLSTATE: HY000 (ER_WARN_HOSTNAME_WONT_WORK) MySQL is started in --skip-name-resolve mode; you must restart it without this switch for this grant to work

Error 1286 - SQLSTATE: 42000 (ER_UNKNOWN_STORAGE_ENGINE) Unknown table engine '%s'

Error 1287 - SQLSTATE: HY000 (ER_WARN_DEPRECATED_SYNTAX) '%s' is deprecated; use '%s' instead

Error 1288 - SQLSTATE: HY000 (ER_NON_UPDATABLE_TABLE) The target table %s of the %s is not updatable

Error 1289 - SQLSTATE: HY000 (ER_FEATURE_DISABLED) The '%s' feature is disabled; you need MySQL built with '%s' to have it working

Error 1290 - SQLSTATE: HY000 (ER_OPTION_PREVENTS_STATEMENT) The MySQL server is running with the %s option so it cannot execute this statement

Error 1291 - SQLSTATE: HY000 (ER_DUPLICATED_VALUE_IN_TYPE) Column '%s' has duplicated value '%s' in %s

Error 1292 - SQLSTATE: HY000 (ER_TRUNCATED_WRONG_VALUE) Truncated incorrect %s value: '%s'

Error 1293 - SQLSTATE: HY000 (ER_TOO_MUCH_AUTO_TIMESTAMP_COLS) Incorrect table definition; there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause

Error 1294 - SQLSTATE: HY000 (ER_INVALID_ON_UPDATE) Invalid ON UPDATE clause for '%s' column

Error 1295 - SQLSTATE: HY000 (ER_UNSUPPORTED_PS) This command is not supported in the prepared statement protocol yet

Error 1296 - SQLSTATE: HY000 (ER_GET_ERRMSG) Got error %d '%s' from %s

Error 1297 - SQLSTATE: HY000 (ER_GET_TEMPORARY_ERRMSG) Got temporary error %d '%s' from %s

Error 1298 - SQLSTATE: HY000 (ER_UNKNOWN_TIME_ZONE) Unknown or incorrect time zone: '%s'

Error 1299 - SQLSTATE: HY000 (ER_WARN_INVALID_TIMESTAMP) Invalid TIMESTAMP value in column '%s' at row %ld

Error 1300 - SQLSTATE: HY000 (ER_INVALID_CHARACTER_STRING) Invalid %s character string: '%s'

Error 1301 - SQLSTATE: HY000 (ER_WARN_ALLOWED_PACKET_OVERFLOWED) Result of %s() was larger than max_allowed_packet (%d) - truncated

Error 1302 - SQLSTATE: 2F003 (ER_SP_NO_RECURSIVE_CREATE) Can't create a %s from within another stored routine

Error 1303 - SQLSTATE: 42000 (ER_SP_ALREADY_EXISTS) %s %s already exists

Error 1304 - SQLSTATE: 42000 (ER_SP_DOES_NOT_EXIST) %s %s does not exist

Error 1305 - SQLSTATE: HY000 (ER_SP_DROP_FAILED) Failed to DROP %s %s

Error 1306 - SQLSTATE: HY000 (ER_SP_STORE_FAILED) Failed to CREATE %s %s

Error 1307 - SQLSTATE: 42000 (ER_SP_LILABEL_MISMATCH) %s with no matching label: %s

Error 1308 - SQLSTATE: 42000 (ER_SP_LABEL_REDEFINE) Redefining label %s

Error 1309 - SQLSTATE: 42000 (ER_SP_LABEL_MISMATCH) End-label %s without match

Error 1310 - SQLSTATE: 01000 (ER_SP_UNINIT_VAR) Referring to uninitialized variable %s

Error 1311 - SQLSTATE: 0A000 (ER_SP_BADSELECT) SELECT in a stored procedure must have INTO

Error 1312 - SQLSTATE: 42000 (ER_SP_BADRETURN) RETURN is only allowed in a FUNCTION

Error 1313 - SQLSTATE: 0A000 (ER_SP_BADSTATEMENT) Statements like SELECT, INSERT, UPDATE (and others) are not allowed in a FUNCTION

Error 1314 - SQLSTATE: 42000 (ER_UPDATE_LOG_DEPRECATED_IGNORED) The update log is deprecated and replaced by the binary log; SET SQL_LOG_UPDATE has been ignored

Error 1315 - SQLSTATE: 42000 (ER_UPDATE_LOG_DEPRECATED_TRANSLATED) The update log is deprecated and replaced by the binary log; SET SQL_LOG_UPDATE has been translated to SET SQL_LOG_BIN

Error 1316 - SQLSTATE: 70100 (ER_QUERY_INTERRUPTED) Query execution was interrupted

Error 1317 - SQLSTATE: 42000 (ER_SP_WRONG_NO_OF_ARGS) Incorrect number of arguments for %s %s; expected %u, got %u

Error 1318 - SQLSTATE: 42000 (ER_SP_COND_MISMATCH) Undefined CONDITION: %s

Error 1319 - SQLSTATE: 42000 (ER_SP_NORETURN) No RETURN found in FUNCTION %s

Error 1320 - SQLSTATE: 2F005 (ER_SP_NORETURNEND) FUNCTION %s ended without RETURN

Error 1321 - SQLSTATE: 42000 (ER_SP_BAD_CURSOR_QUERY) Cursor statement must be a SELECT

Error 1322 - SQLSTATE: 42000 (ER_SP_BAD_CURSOR_SELECT) Cursor SELECT must not have INTO

Error 1323 - SQLSTATE: 42000 (ER_SP_CURSOR_MISMATCH) Undefined CURSOR: %s

Error 1324 - SQLSTATE: 24000 (ER_SP_CURSOR_ALREADY_OPEN) Cursor is already open

Error 1325 - SQLSTATE: 24000 (ER_SP_CURSOR_NOT_OPEN) Cursor is not open

Error 1326 - SQLSTATE: 42000 (ER_SP_UNDECLARED_VAR) Undeclared variable: %s

Error 1327 - SQLSTATE: HY000 (ER_SP_WRONG_NO_OF_FETCH_ARGS) Incorrect number of FETCH variables

Error 1328 - SQLSTATE: 02000 (ER_SP_FETCH_NO_DATA) No data to FETCH

Error 1329 - SQLSTATE: 42000 (ER_SP_DUP_PARAM) Duplicate parameter: %s

Error 1330 - SQLSTATE: 42000 (ER_SP_DUP_VAR) Duplicate variable: %s

Error 1331 - SQLSTATE: 42000 (ER_SP_DUP_COND) Duplicate condition: %s

Error 1332 - SQLSTATE: 42000 (ER_SP_DUP_CURS) Duplicate cursor: %s

Error 1333 - SQLSTATE: HY000 (ER_SP_CANT_ALTER) Failed to ALTER %s %s

Error 1334 - SQLSTATE: 0A000 (ER_SP_SUBSELECT_NYI) Subselect value not supported

Error 1335 - SQLSTATE: 42000 (ER_SP_NO_USE) USE is not allowed in a stored procedure

Error 1336 - SQLSTATE: 42000 (ER_SP_VARCOND_AFTER_CURSHNDLR) Variable or condition declaration after cursor or handler declaration

Error 1337 - SQLSTATE: 42000 (ER_SP_CURSOR_AFTER_HANDLER) Cursor declaration after handler declaration

Error 1338 - SQLSTATE: 20000 (ER_SP_CASE_NOT_FOUND) Case not found for CASE statement

Error 1339 - SQLSTATE: HY000 (ER_FPARSER_TOO_BIG_FILE) Configuration file '%s' is too big

Error 1340 - SQLSTATE: HY000 (ER_FPARSER_BAD_HEADER) Malformed file type header in file '%s'

Error 1341 - SQLSTATE: HY000 (ER_FPARSER_EOF_IN_COMMENT) Unexpected end of file while parsing comment '%s'

Error 1342 - SQLSTATE: HY000 (ER_FPARSER_ERROR_IN_PARAMETER) Error while parsing parameter '%s' (line: '%s')

Error 1343 - SQLSTATE: HY000 (ER_FPARSER_EOF_IN_UNKNOWN_PARAMETER) Unexpected end of file while skipping unknown parameter '%s'

Error 1344 - SQLSTATE: HY000 (ER_VIEW_NO_EXPLAIN) EXPLAIN/SHOW can not be issued; lacking privileges for underlying table

Error 1345 - SQLSTATE: HY000 (ER_FRM_UNKNOWN_TYPE) File '%s' has unknown type '%s' in its header

Error 1346 - SQLSTATE: HY000 (ER_WRONG_OBJECT) '%s.%s' is not %s

Error 1347 - SQLSTATE: HY000 (ER_NONUPDATEABLE_COLUMN) Column '%s' is not updatable

Error 1348 - SQLSTATE: HY000 (ER_VIEW_SELECT_DERIVED) View's SELECT contains a subquery in the FROM clause

Error 1349 - SQLSTATE: HY000 (ER_VIEW_SELECT_PROCEDURE) View's SELECT contains a PROCEDURE clause

Error 1350 - SQLSTATE: HY000 (ER_VIEW_SELECT_VARIABLE) View's SELECT contains a variable or parameter

Error 1351 - SQLSTATE: HY000 (ER_VIEW_SELECT_TMPTABLE) View's SELECT contains a temporary table '%s'

Error 1352 - SQLSTATE: HY000 (ER_VIEW_WRONG_LIST) View's SELECT and view's field list have different column counts

Error 1353 - SQLSTATE: HY000 (ER_WARN_VIEW_MERGE) View merge algorithm can't be used here for now (assumed undefined algorithm)

Error 1354 - SQLSTATE: HY000 (ER_WARN_VIEW_WITHOUT_KEY) View being updated does not have complete key of underlying table in it

Error 1355 - SQLSTATE: HY000 (ER_VIEW_INVALID) View '%s.%s' references invalid table(s) or column(s)

Error 1356 - SQLSTATE: HY000 (ER_SP_NO_DROP_SP) Can't drop a %s from within another stored routine

Error 1357 - SQLSTATE: HY000 (ER_SP_GOTO_IN_HNDLR) GOTO is not allowed in a stored procedure handler

Error 2000 - (CR_UNKNOWN_ERROR) Unknown MySQL error

Error 2001 - (CR_SOCKET_CREATE_ERROR) Can't create UNIX socket (%d)

Error 2002 - (CR_CONNECTION_ERROR) Can't connect to local MySQL server through socket '%s' (%d)

Error 2003 - (CR_CONN_HOST_ERROR) Can't connect to MySQL server on '%s' (%d)

Error 2004 - (CR_IPSOCK_ERROR) Can't create TCP/IP socket (%d)

Error 2005 - (CR_UNKNOWN_HOST) Unknown MySQL server host '%s' (%d)

Error 2006 - (CR_SERVER_GONE_ERROR) MySQL server has gone away

Error 2007 - (CR_VERSION_ERROR) Protocol mismatch; server version = %d, client version = %d

Error 2008 - (CR_OUT_OF_MEMORY) MySQL client ran out of memory

Error 2009 - (CR_WRONG_HOST_INFO) Wrong host info

Error 2010 - (CR_LOCALHOST_CONNECTION) Localhost via UNIX socket

Error 2011 - (CR_TCP_CONNECTION) %s via TCP/IP

Error 2012 - (CR_SERVER_HANDSHAKE_ERR) Error in server handshake

Error 2013 - (CR_SERVER_LOST) Lost connection to MySQL server during query

Error 2014 - (CR_COMMANDS_OUT_OF_SYNC) Commands out of sync; you can't run this command now

Error 2015 - (CR_NAMEDPIPE_CONNECTION) %s via named pipe

Error 2016 - (CR_NAMEDPIPEWAIT_ERROR) Can't wait for named pipe to host: %s pipe: %s (%lu)

Error 2017 - (CR_NAMEDPIPEOPEN_ERROR) Can't open named pipe to host: %s pipe: %s (%lu)

Error 2018 - (CR_NAMEDPIPESETSTATE_ERROR) Can't set state of named pipe to host: %s pipe: %s (%lu)

Error 2019 - (CR_CANT_READ_CHARSET) Can't initialize character set %s (path: %s)

Error 2020 - (CR_NET_PACKET_TOO_LARGE) Got packet bigger than 'max_allowed_packet' bytes

Error 2021 - (CR_EMBEDDED_CONNECTION) Embedded server

Error 2022 - (CR_PROBE_SLAVE_STATUS) Error on SHOW SLAVE STATUS:

Error 2023 - (CR_PROBE_SLAVE_HOSTS) Error on SHOW SLAVE HOSTS:

Error 2024 - (CR_PROBE_SLAVE_CONNECT) Error connecting to slave:

Error 2025 - (CR_PROBE_MASTER_CONNECT) Error connecting to master:

Error 2026 - (CR_SSL_CONNECTION_ERROR) SSL connection error

Error 2027 - (CR_MALFORMED_PACKET) Malformed packet

Error 2028 - (CR_WRONG_LICENSE) This client library is licensed only for use with MySQL servers having '%s' license

Error 2029 - (CR_NULL_POINTER) Invalid use of null pointer

Error 2030 - (CR_NO_PREPARE_STMT) Statement not prepared

Error 2031 - (CR_PARAMS_NOT_BOUND) No data supplied for parameters in prepared statement

Error 2032 - (CR_DATA_TRUNCATED) Data truncated

Error 2033 - (CR_NO_PARAMETERS_EXISTS) No parameters exist in the statement

Error 2034 - (CR_INVALID_PARAMETER_NO) Invalid parameter number

Error 2035 - (CR_INVALID_BUFFER_USE) Can't send long data for non-string/non-binary data types (parameter: %d)

Error 2036 - (CR_UNSUPPORTED_PARAM_TYPE) Using unsupported buffer type: %d (parameter: %d)

Error 2037 - (CR_SHARED_MEMORY_CONNECTION) Shared memory (%lu)

Error 2038 - (CR_SHARED_MEMORY_CONNECT_REQUEST_ERROR) Can't open shared memory; client could not create request event (%lu)

Error 2039 - (CR_SHARED_MEMORY_CONNECT_ANSWER_ERROR) Can't open shared memory; no answer event received from server (%lu)

Error 2040 - (CR_SHARED_MEMORY_CONNECT_FILE_MAP_ERROR) Can't open shared memory; server could not allocate file mapping (%lu)

Error 2041 - (CR_SHARED_MEMORY_CONNECT_MAP_ERROR) Can't open shared memory; server could not get pointer to file mapping (%lu)

Error 2042 - (CR_SHARED_MEMORY_FILE_MAP_ERROR) Can't open shared memory; client could not allocate file mapping (%lu)

Error 2043 - (CR_SHARED_MEMORY_MAP_ERROR) Can't open shared memory; client could not get pointer to file mapping (%lu)

Error 2044 - (CR_SHARED_MEMORY_EVENT_ERROR) Can't open shared memory; client could not create %s event (%lu)

Error 2045 - (CR_SHARED_MEMORY_CONNECT_ABANDONED_ERROR) Can't open shared memory; no answer from server (%lu)

Error 2046 - (CR_SHARED_MEMORY_CONNECT_SET_ERROR) Can't open shared memory; cannot send request event to server (%lu)

Error 2047 - (CR_CONN_UNKNOW_PROTOCOL) Wrong or unknown protocol

Error 2048 - (CR_INVALID_CONN_HANDLE) Invalid connection handle

Error 2049 - (CR_SECURE_AUTH) Connection using old (pre-4.1.1) authentication protocol refused (client option 'secure_auth' enabled)

Error 2050 - (CR_FETCH_CANCELED) Row retrieval was canceled by mysql_stmt_close() call

Error 2051 - (CR_NO_DATA) Attempt to read column without prior row fetch

 

반응형
반응형

JNDI(Java Naming and Directory Interface)는 디렉터리 서비스에서 제공하는

데이터 및 객체를 발견(discover)하고 참고(lookup) 하기 위한 자바 API다. 

출처 : 위키백과

 

JNDI는 DB Connection을 WAS에서 제어하면서 서버에서 하나의 커넥션 풀을 가진다.

(중요하니까 본명 조 폰트)

 

이 글에서 설명하는 JNDI 예시 환경

JNDI를 설정하기전에 체크

1.자기 환경의 WAS
2.자기 환경의 JDBC 방식
3.자기 환경의 Spring framework 버전 혹은 MVC / Boot

WAS : tomcat 8.5

Spring framework MVC Project : 5.0.3

jdbc 방식 : dbcp

DB : MariaDB 10.2

 

JNDI (Java Naming and Directory Interface) 사용 이유


1. 여러 프로젝트에서 하나의 datasource를 공유해서 사용할 때
2. 실제 프로젝트는 WAS에 올라가 운영되는데
개발/소스를 잘 모르는 운영자가 이해하기 쉽게 하기 위함

3.WAS의 교체에도 신속한 대응이 가능하다.

 

 

 

1.Spring 프로젝트 내부 설정


1-1.root-context.xml 상단 내용 추가 ( jee를 쓰기 위함 )

<xmlns:jee="http://www.springframework.org/schema/jee"
xsi:schemaLocation="http://www.springframework.org/schema/jee 
                    http://www.springframework.org/schema/jee/spring-jee.xsd">

 

1-1.root-context.xml 하단 내용 추가

 

기존 JDBC 방식 (변경 전)

<bean id="dataSource" class="org.apache.commons.dbcp2.BasicDataSource" destroy-method="close">
      <property name="driverClassName" value="com.mariadb.jdbc.Driver" />
      <property name="url" value="jdbc:mariadb//localhost:3306/databaseName" />
      <property name="username" value="dkanro" />
      <property name="password" value="dkanro1" />
</bean>

JDNI 방식 (변경 후)

<jee:jndi-lookup id="dbDataSource"
 jndi-name="jdbc/projectName"
 expected-type="javax.sql.DataSource" />

jndi-name : 자기가 설정하고 싶은 별칭 (하지만 이 이름이 설정 페이지와 동일해야 된다.)

 

1-2.web.xml

<resource-ref>
<description>jndiprojectName</description>
	<res-ref-name>jdbc/projectName</res-ref-name>
	<res-type>javax.sql.DataSource</res-type>
	<res-auth>Container</res-auth>
</resource-ref>

2.Tomcat 설정

$CATALINA_HOME == 톰캣이 위치한 경로

2-1.server.xml 설정하기

 

$CATALINA_HOME/conf/server.xml 내용 추가

<GlobalNamingResources>
  <Resource auth="Container" driverClassName="org.mariadb.jdbc.Driver" 
  factory="org.apache.tomcat.dbcp.dbcp2.BasicDataSourceFactory" 
  name="jdbc/projectName"  
  type="javax.sql.DataSource" 
  url="jdbc:mariadb://172.10.0.10:3306/databaseName" 
  username="dkanro1" password="dkanro1"/> 
</GlobalNamingResources>

 

톰캣 안에 <GlobalNamingResources> </GlobalNamingResources> 태그는 원래 존재합니다.

직접 만드는 것이 아닙니다.

안에 내용 <Resource ~~..>만 기술하는 것입니다. 

 

 

2-2.context.xml 설정하기

 

$CATALINA_HOME/conf/context.xml 내용 추가

<Context>
   <ResourceLink name="jdbc/projectName" global="jdbc/projectName" type="javax.sql.DataSource"/>
</Context>

 

2-3.mariaDB JDBC.jar 드라이버 파일 추가

 

$CATALINA_HOME/lib 폴더에 mariadb-java-client-1.5.9.jar 파일 추가 ( 버전은 꼭 1.5.9가 아니어도 됩니다. )

mariadb-java-client-1.5.9.jar

3.Tomcat 서비스 재시작

systemctl restart tomcat (서비스 이름은 다 다릅니다.)

 

 


추가 참고사항


※ 자주 뜨는 오류 

원인 : mariadb-java-client-1.5.9.jar 파일이 $CATALINA_HOME/lib 폴더에 존재하지 않는 경우.

해결 : mariadb-java-client-1.5.9.jar를 다운받아 $CATALINA_HOME/lib에 넣은 후 서비스 재시작

The web application [] registered the JDBC driver [org.mariadb.jdbc.Driver] 
but failed to unregister it when the web application was stopped. To prevent a memory leak, 
the JDBC Driver has been forcibly unregistered.

 

※ mariadb-java-client-1.5.9.jar 드라이버 다운로드 주소

https://mvnrepository.com/artifact/org.mariadb.jdbc/mariadb-java-client/1.5.9

링크 들어가셔서 상단 Files에 jar 버튼 누르시면 다운로드됩니다.

 

※ DB가 다를 경우

driverClass와 url을 변경하시면 됩니다.

//예시 Oracle일 경우
driverClassName="oracle.jdbc.OracleDriver"
url="jdbc:oracle:thin:@172.10.0.10:1521:SID"

※ JDBC 방식이 다를 경우

이 부분을 원하는 JDBC 방식 문법에 맞게 변경하면 됩니다.

<Resource auth="Container" driverClassName="org.mariadb.jdbc.Driver" 
  factory="org.apache.tomcat.dbcp.dbcp2.BasicDataSourceFactory" 
  name="jdbc/projectName"  
  type="javax.sql.DataSource" 
  url="jdbc:mariadb://172.10.0.10:3306/databaseName" 
  username="dkanro1" password="dkanro1"/> 

 

반응형
반응형

DATETIME 


index : 불가능

time zone : 영향 없음

타입 : 문자형

용량 : 8 byte

지원 범위 : 1000-01-01 00:00:00 ~ 9999-12-31 23:59:59

ON UPDATE 구문 : 사용 가능 (사용 불가로 알고 있었는데 테스트해보니 잘 되네요.)

 

TIMESTAMP


index : 가능

time zone : 영향 있음

타입 : 숫자형

용량 : 4 byte

지원 범위 : 1970-01-01 00:00:00  ~ 2038-01-19 03:14:07

ON UPDATE 구문 : 사용 가능

 

※ 주의 : 마이크로 초까지 얻으려면 timestamp( 1~6의 값 )을 설정 해줘야 합니다. 

설정하지 않을 경우 기본값 0

 

 

DATETIME과 TIMESTAMP의 차이점


DATETIME은 입력된 날짜와 시간 그대로 데이터를 저장하지만

TIMESTAMP는 time_zone 시스템 변수로 값을 지정한다.

TIMESTAMP는 데이터 입출력시 time_zone 시스템 변수 값을 체크해 그 기반으로 변환하여 처리한다.

 

한마디로 가장 큰 차이점은 DATETIME은 일정하며 TIMESTAMP는 time_zone 설정의 영향을 받습니다.

 

아주 대표적인 예로 보자면

mysql> show variables like '%time_zone%';
+------------------+---------------------+
| Variable_name    | Value               |
+------------------+---------------------+
| system_time_zone | India Standard Time |
| time_zone        | Asia/Calcutta       |
+------------------+---------------------+

mysql> create table datedemo(
    -> mydatetime datetime,
    -> mytimestamp timestamp
    -> );

mysql> insert into datedemo values ((now()),(now()));

mysql> select * from datedemo;
+---------------------+---------------------+
| mydatetime          | mytimestamp         |
+---------------------+---------------------+
| 2011-08-21 14:11:09 | 2011-08-21 14:11:09 |
+---------------------+---------------------+

mysql> set time_zone="america/new_york";

mysql> select * from datedemo;
+---------------------+---------------------+
| mydatetime          | mytimestamp         |
+---------------------+---------------------+
| 2011-08-21 14:11:09 | 2011-08-21 04:41:09 |
+---------------------+---------------------+
출처 : tech-recipes

 

결론은 TIMESTAMP는 time_zone 시스템 변수에 따른 값 변화가 크다는 것이다.

 

그럼 변수가 많으니 무조건 DATETIME을 써야 할까요? 그렇지 않습니다.

해외에 나가는 사이트라면 TIMESTAMP와 DATETIME을 적절히 잘 사용하여야 합니다.

 

더욱 자세한 걸 원하시는 분은

 

TIMESTAMP

https://mariadb.com/kb/en/timestamp/

 

DATETIME

https://mariadb.com/kb/en/datetime/

 

반응형

+ Recent posts