[php] Laravel 5.4: Specified key was too long error
Attachment '1' |
|
---|
Laravel 5.4: Specified key was too long error
Laravel 5.4 made a change to the default database character set, and it’s now utf8mb4 which includes support for storing emojis. This only affects new applications and as long as you are running MySQL v5.7.7 and higher you do not need to do anything.
For those running MariaDB or older versions of MySQL you may hit this error when trying to run migrations:
[Illuminate\Database\QueryException]
SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes (SQL: alter table users add unique users_email_unique(email))
[PDOException]
SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes
As outlined in the Migrations guide to fix this all you have to do is edit your AppServiceProvider.php file and inside the boot method set a default string length:
Laravel 5.4 에서 기본 데이터베이스 캐릭터셋이 변경됐고, utf8mb4 이모티콘을 지원한다.
이것은 새로운 프로젝트에 영향을 미치며 MySQL 5.7.7 이상이라면 아무것도 할 필요 없다.
MariaDB 또는 이전 버전의 MySQL을 사용하면 마이그레이션을 실행할 때 오류가 발생할 수 있다.
Migrations 가이드에 안내한대로 다음과 같이 AppServiceProvider.php 파일을 편집하여 기본 문자열 길이를 설정하면 된다.
# app/Providers/AppServiceProvider.php
use Illuminate\Support\Facades\Schema; public function boot() { Schema::defaultStringLength(191); }
After that everything should work as normal.
[출처] https://laravel-news.com/laravel-5-4-key-too-long-error
No. | Category | Subject | Author | Date | Views |
---|---|---|---|---|---|
945 | Develop | [swift] UIView에서 subview 찾기 | hooni | 2022.12.09 | 2128 |
944 | Develop | [php][laravel] 초간단 MacOS에서 Laravel 개발 환경 구축 | hooni | 2017.12.15 | 2131 |
943 | Develop | [java] netty (비동기 이벤트 방식 네트워크 프레임워크) 사용법 #2 (client) | hooni | 2015.01.02 | 2135 |
942 | Develop |
[ios] Swift 4 Dictionary 사용하기
![]() |
hooni | 2018.11.29 | 2136 |
941 | Develop |
[c#] 툴바 최근 버전(IE6, IE7 두가지 버전)
![]() |
hooni | 2013.04.23 | 2138 |
940 | Develop | [ios] 설정에서 푸시 알림(APNS) on/off 상태 확인 | hooni | 2015.04.28 | 2161 |
939 | Develop | [android] SQLiteOpenHelper를 이용한 DBManager | hooni | 2017.06.14 | 2199 |
938 | Develop |
[ios] 기본 네비게이션바의 타이틀, back버튼 위치와 속성 변경
![]() |
hooni | 2016.05.16 | 2206 |
937 | Develop |
[c#] BHO 한샘툴바랑 동현툴바..
![]() |
hooni | 2013.04.23 | 2208 |
936 | Develop |
[android] 안드로이드 앱 문서 샘플 - NCComix
![]() |
hooni | 2017.07.11 | 2236 |
935 | System/OS |
서버 확장을 위한 두 가지 방법
![]() |
hooni | 2018.08.29 | 2282 |
934 | Develop |
[android] 버전 별 앱 알림 설정으로 이동하는 방법
![]() |
hooni | 2016.11.28 | 2297 |