解决在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 相关文章推荐
用PHP读取RSS feed的代码
Aug 01 PHP
php explode函数实例代码
Feb 27 PHP
md5 16位二进制与32位字符串相互转换示例
Dec 30 PHP
php实现给图片加灰色半透明效果的方法
Oct 20 PHP
php获取指定(访客)IP所有信息(地址、邮政编码、国家、经纬度等)的方法
Jul 06 PHP
php计算税后工资的方法
Jul 28 PHP
php提高网站效率的技巧
Sep 29 PHP
php实现简单的上传进度条
Nov 17 PHP
PHP HTTP 认证实例详解
Nov 03 PHP
PHP的Trait机制原理与用法分析
Oct 18 PHP
laravel中的fillable和guarded属性详解
Oct 23 PHP
CentOS7系统搭建LAMP及更新PHP版本操作详解
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实现的获取URL信息的类
2007/01/02 PHP
tp5.1 框架数据库-数据集操作实例分析
2020/05/26 PHP
JavaScript的变量作用域深入理解
2009/10/25 Javascript
jquery下将选择的checkbox的id组成字符串的方法
2010/11/28 Javascript
Ajax异步提交表单数据的说明及方法实例
2013/06/22 Javascript
js 高效去除数组重复元素示例代码
2013/12/19 Javascript
解析jQuery的三种bind/One/Live事件绑定使用方法
2013/12/30 Javascript
用jquery写的菜单从左往右滑动出现
2014/04/11 Javascript
Node.js实现简单聊天服务器
2014/06/20 Javascript
nodejs命令行参数处理模块commander使用实例
2014/09/17 NodeJs
Javascript中判断一个值是否为undefined的方法详解
2016/09/28 Javascript
seajs学习之模块的依赖加载及模块API的导出
2016/10/20 Javascript
Bootstrap按钮组实例详解
2017/07/03 Javascript
在Vue组件化中利用axios处理ajax请求的使用方法
2017/08/25 Javascript
浅谈Node模块系统及其模式
2017/11/17 Javascript
微信小程序使用request网络请求操作实例
2017/12/15 Javascript
解决vue单页路由跳转后scrollTop的问题
2018/09/03 Javascript
JavaScript实现shuffle数组洗牌操作示例
2019/01/03 Javascript
vue-router为激活的路由设置样式操作
2020/07/18 Javascript
[01:18]一目了然!DOTA2DotA快捷操作对比第一弹
2014/07/01 DOTA
Python中atexit模块的基本使用示例
2015/07/08 Python
python如何生成网页验证码
2018/07/28 Python
python hbase读取数据发送kafka的方法
2018/12/27 Python
python实现kmp算法的实例代码
2019/04/03 Python
详解Python对JSON中的特殊类型进行Encoder
2019/07/15 Python
深入解析神经网络从原理到实现
2019/07/26 Python
使用Pandas的Series方法绘制图像教程
2019/12/04 Python
Python实现将蓝底照片转化为白底照片功能完整实例
2019/12/13 Python
浅谈Python中range与Numpy中arange的比较
2020/03/11 Python
澳大利亚首屈一指的在线购物目的地:Kogan.com
2017/02/02 全球购物
捷克家电和家具购物网站:OKAY.cz
2020/07/23 全球购物
道路交通安全实施方案
2014/03/12 职场文书
2015暑期爱心支教策划书
2015/07/14 职场文书
2015年国庆节标语大全
2015/07/30 职场文书
煤矿安全生产工作总结
2015/08/13 职场文书
springboot使用Redis作缓存使用入门教程
2021/07/25 Redis