Database

βœ… solved * MySQLSyntaxErrorException: Table doesn't exist

___l_i_ * 2021. 6. 17. 12:04

Cause: java.sql.SQLSyntaxErrorException: Table 'leni.user' doesn't exist

 

μ˜€λŠ˜λ„ μ—λŸ¬λ₯Ό 좜λ ₯ν•˜λŠλΌ λ°”μœ μ½˜μ†”κ΅°.. πŸ₯² μ—λŸ¬ 멈좰..

ν…Œμ΄λΈ”μ΄ μ—†λ‚˜ μ‹Άμ–΄  확인을 ν•΄λ΄€λ”λ‹ˆ λ”± ν•˜λ‹ˆ μ‘΄μž¬ν•˜κ³  μžˆλŠ” λ‚˜μ˜ user ν…Œμ΄λΈ”.

 

원인은 MySQL 쿼리 μ‹€ν–‰ μ‹œ λŒ€μ†Œλ¬Έμžλ₯Ό κ΅¬λΆ„ν•˜λŠ” μ„€μ • λ•Œλ¬Έμ— μΌμ–΄λ‚œ μΌμ΄μ˜€λ‹€.

λ”°λ‘œ 손을 λŒ€μ§€ μ•Šμ•˜λ‹€λ©΄ κΈ°λ³Έ 섀정은 0 으둜 λ˜μ–΄ μžˆλŠ”λ° μ΄λŠ” 쿼리 μ‹€ν–‰ μ‹œ λŒ€μ†Œλ¬Έμžλ₯Ό κ΅¬λ³„ν•˜μ—¬ μ‹€ν–‰ν•˜κ²Œ ν•œλ‹€.

 

  • 0 : (default) ν…Œμ΄λΈ” 생성 및 μ‘°νšŒμ‹œ λŒ€μ†Œλ¬Έμž ꡬ뢄 함
  • 1 : μž…λ ₯값이 λŒ€μ†Œλ¬Έμž 상관없이 μ†Œλ¬Έμžλ‘œ μΈμ‹ν•˜μ—¬ μ†Œλ¬Έμž 인식 파일 생성함.
  • 2 : μœˆλ„μš°μ—μ„œ λŒ€μ†Œλ¬Έμž κ΅¬λΆ„ν•΄μ„œ ν…Œμ΄λΈ” κ°€μ Έμ˜΄

 

MySQL에 μ ‘μ†ν•΄μ„œ μ˜΅μ…˜μ΄ μ–΄λ–»κ²Œ μ„€μ •λ˜μ–΄ μžˆλŠ”μ§€ ν™•μΈν•΄λ³΄μž

mysql> show variables like 'lower_case_table_names';

 

 

μ„€μ • λ˜μ–΄ μžˆλŠ” κΈ°λ³Έ 값을 1둜 λ°”κΎΈμ–΄ μ£Όλ©΄ λŒ€/μ†Œλ¬Έμž ꡬ뢄 없이 μ‚¬μš©μ΄ κ°€λŠ₯ν•˜λ‹€!

 

 

λ³€κ²½ν•˜κΈ°!

1. μ„€μ • νŒŒμΌμ„ μ—΄μ–΄μ£Όκ³ 

$ vi /etc/mysql/my.cnf

 

2. lower_case_table_name을 μ°Ύμ•„μ„œ λ‹€μŒκ³Ό 같이 λ°”κΏ”μ€€λ‹€.

lower_case_table_names = 1

 

3. μ„œλ²„λ₯Ό μž¬μ‹œμž‘ν•œλ‹€.

μ„€μ • νŒŒμΌμ„ λ³€κ²½ν–ˆκΈ° λ•Œλ¬Έμ— μ„œλ²„λ₯Ό μž¬μ‹œμž‘ν•΄μ£Όμ–΄μ•Ό 적용이 λœλ‹€!

ubuntu의 κ²½μš°μ—λŠ” λ‹€μŒ λͺ…령어인데 λ‹€λ₯Έ OSλŠ” μ‹œλ„λ₯Ό μ•ˆ ν•΄λ΄μ„œ.. 방법이 λ‹€λ₯΄λ‹€λ©΄ κ΅¬κΈ€μ‹ κ»˜ λΆ€νƒν•˜μž.

$ sudo service mysql restart

 

 

ν™•μΈν•˜κΈ°

μ„œλ²„ μž¬μ‹œμž‘ ν›„ mysql에 μ ‘μ†ν•΄μ„œ ν¬μŠ€νŒ… 상단에 μžˆλŠ” μ˜΅μ…˜ 확인 λͺ…λ Ήμ–΄λ₯Ό μ‹€ν–‰ν•΄μ„œ 1둜 λ³€κ²½λœ 것이 보이면 λœλ‹€!

μ“°λ‹ˆλŠ” κ·Έλƒ₯ κ΅¬λΆ„ν•˜λŠ”κ²Œ 더 λ‚˜μ„ 것 κ°™μ•„μ„œ μ˜΅μ…˜ λ³€κ²½ ν›„ λŒ€/μ†Œλ¬Έμž ꡬ뢄없이 μ‚¬μš© κ°€λŠ₯ ν•œ κ²ƒλ§Œ ν™•μΈν•˜κ³  λ‹€μ‹œ λŒλ €λ†“μ•˜λ‹€!

 

 


Thanks for πŸ™ˆ