解决在laravel中auth建立时候遇到的问题


Posted in PHP onOctober 15, 2019

当你使用auth做用户登录注册的时候,会很方便,但是你在做数据库迁移的时候可能会遇到一个问题

$ php artisan migrate
Migration table created successfully.



 [Illuminate\Database\QueryException]
 SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was t
 oo 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 t
 oo long; max key length is 767 bytes

不要慌,这里说的是你的数据库迁移完成了,蛋疼的是这里有一个报错,会使你在接下来项目中后面的迁移操作继续报错。

[Illuminate\Database\QueryException]
 SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'users' alre
 ady exists (SQL: create table `users` (`id` int unsigned not null auto_incr
 ement primary key, `name` varchar(191) not null, `email` varchar(191) not n
 ull, `password` varchar(191) not null, `remember_token` varchar(100) null,
 `created_at` timestamp null, `updated_at` timestamp null) default character
 set utf8mb4 collate utf8mb4_unicode_ci)

 [PDOException]
 SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'users' alre
 ady exists

解决方案如下:

索引长度 & MySQL / MariaDB#

Laravel 默认使用 utf8mb4 字符,包括支持在数据库存储「表情」。如果你正在运行的 MySQL release 版本低于5.7.7 或 MariaDB release 版本低于10.2.2 ,为了MySQL为它们创建索引,你可能需要手动配置迁移生成的默认字符串长度,你可以通过调用

项目/app/Providers/AppServiceProvider.php 中的 Schema::defaultStringLength 方法来配置它:

use Illuminate\Support\Facades\Schema;
 
/**
 * 引导任何应用程序服务。
 *
 * @return void
 */
public function boot()
{
 Schema::defaultStringLength(191);
}

或者你可以为数据库开启 innodb_large_prefix 选项,有关如何正确开启此选项的说明请查阅数据库文档。

以上这篇解决在laravel中auth建立时候遇到的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
Zend引擎的发展 [15]
Oct 09 PHP
用PHP实现图象锐化代码
Jun 14 PHP
ZF等常用php框架中存在的问题
Jan 10 PHP
有关于PHP中常见数据类型的汇总分享
Jan 06 PHP
php调用KyotoTycoon简单实例
Apr 02 PHP
浅谈使用PHP开发微信支付的流程
Oct 04 PHP
php基于openssl的rsa加密解密示例
Jul 11 PHP
PHP类型约束用法示例
Sep 28 PHP
PHP中获取文件创建日期、修改日期、访问时间的方法
Nov 05 PHP
PHP基于堆栈实现的高级计算器功能示例
Sep 15 PHP
PHP使Laravel为JSON REST API返回自定义错误的问题
Oct 16 PHP
php中加密解密DES类的简单使用方法示例
Mar 26 PHP
使用 PHP Masked Package 屏蔽敏感数据的实现方法
Oct 15 #PHP
解决laravel 表单提交-POST 异常的问题
Oct 15 #PHP
浅谈PHP array_search 和 in_array 函数效率问题
Oct 15 #PHP
浅谈Laravel POST,PUT,PATCH 路由的区别
Oct 15 #PHP
laravel 解决ajax异步提交数据,并还回填充表格的问题
Oct 15 #PHP
Laravel 不同生产环境服务器的判断实践
Oct 15 #PHP
laravel自定义分页的实现案例offset()和limit()
Oct 15 #PHP
You might like
PHP Token(令牌)设计
2008/03/15 PHP
PHP 年月日的三级联动实例代码
2017/05/24 PHP
JavaScript Math.floor方法(对数值向下取整)
2015/01/09 Javascript
深入探讨JavaScript String对象
2015/03/09 Javascript
基于jquery实现下拉框美化特效
2016/02/02 Javascript
JQuery fileupload插件实现文件上传功能
2016/03/18 Javascript
详谈jQuery Ajax(load,post,get,ajax)的用法
2017/03/02 Javascript
vue iview组件表格 render函数的使用方法详解
2018/03/15 Javascript
解决vue页面DOM操作不生效的问题
2018/03/17 Javascript
nodejs 简单实现动态html的方法
2018/05/12 NodeJs
electron实现qq快捷登录的方法示例
2018/10/22 Javascript
jQuery实现的鼠标拖动画矩形框示例【可兼容IE8】
2019/05/17 jQuery
解决vue打包后vendor.js文件过大问题
2019/07/03 Javascript
简述ES6新增关键字let与var的区别
2019/08/23 Javascript
JSONP 的原理、理解 与 实例分析
2020/05/16 Javascript
[16:27]DOTA2 HEROS教学视频教你分分钟做大人-艾欧
2014/06/11 DOTA
pandas把dataframe转成Series,改变列中值的类型方法
2018/04/10 Python
局域网内python socket实现windows与linux间的消息传送
2019/04/19 Python
Django框架模板语言实例小结【变量,标签,过滤器,继承,html转义】
2019/05/23 Python
详解python中__name__的意义以及作用
2019/08/07 Python
在keras中获取某一层上的feature map实例
2020/01/24 Python
python的sys.path模块路径添加方式
2020/03/09 Python
django rest framework 自定义返回方式
2020/07/12 Python
使用Python将语音转换为文本的方法
2020/08/10 Python
python接口自动化框架实战
2020/12/23 Python
西班牙第一的网上药房:PromoFarma.com
2017/04/17 全球购物
美国著名的品牌折扣店:Burlington
2017/06/08 全球购物
ReVive利维肤美国官网:RéVive Skincare
2018/04/18 全球购物
致跳远运动员加油稿
2014/02/11 职场文书
企业精细化管理实施方案
2014/03/23 职场文书
《记金华的双龙洞》教学反思
2014/04/19 职场文书
合作意向书
2014/07/30 职场文书
房屋出租委托书格式
2014/09/23 职场文书
企业务虚会发言材料
2014/10/20 职场文书
详解Laravel制作API接口
2021/05/31 PHP
【js设计模式】SOLID五大设计原则
2022/03/24 Javascript