解决在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 攻击方法之谈php+mysql注射语句构造
Oct 30 PHP
兼容firefox,chrome的网页灰度效果
Aug 08 PHP
PHP跳转页面的几种实现方法详解
Jun 08 PHP
PHP 过滤页面中的BOM(实现代码)
Jun 29 PHP
PHP产生不重复随机数的5个方法总结
Nov 12 PHP
PHP stream_context_create()函数的使用示例
May 12 PHP
php命令行(cli)模式下报require 加载路径错误的解决方法
Nov 23 PHP
PHP读MYSQL中文乱码的快速解决方法
Oct 01 PHP
PHP  Yii清理缓存的实现方法
Nov 10 PHP
php使用flock阻塞写入文件和非阻塞写入文件的实例讲解
Jul 10 PHP
Laravel中为什么不使用blpop取队列详析
Aug 01 PHP
关于php unset对json_encode的影响详解
Nov 14 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
LotusPhp笔记之:Logger组件的使用方法
2013/05/06 PHP
php实现cc攻击防御和防止快速刷新页面示例
2014/02/13 PHP
ThinkPHP模板范围判断输出In标签与Range标签用法详解
2014/06/30 PHP
Zend Framework 2.0事件管理器(The EventManager)入门教程
2014/08/11 PHP
PHP 获取ip地址代码汇总
2015/07/05 PHP
Linux基于php-fpm模式的lamp搭建phpmyadmin的方法
2018/10/25 PHP
用dom+xhtml+css制作的一个相册效果代码打包下载
2008/01/24 Javascript
JQuery 构建客户/服务分离的链接模型中Table中的排序分析
2010/01/22 Javascript
yepnope.js 异步加载资源文件
2011/09/08 Javascript
js控制CSS样式属性语法对照表
2012/12/11 Javascript
JS打开层/关闭层/移动层动画效果的实例代码
2013/05/11 Javascript
js贪吃蛇网页版游戏特效代码分享(挑战十关)
2015/08/24 Javascript
获取IE浏览器Cookie信息的方法
2017/01/23 Javascript
JavaScript和jQuery制作光棒效果
2017/02/24 Javascript
nodejs后台集成ueditor富文本编辑器的实例
2017/07/11 NodeJs
移动端效果之IndexList详解
2017/10/20 Javascript
使用veloticy-ui生成文字动画效果
2018/02/08 Javascript
vue权限路由实现的方法示例总结
2018/07/29 Javascript
详解redux异步操作实践
2018/08/15 Javascript
vue项目中将element-ui table表格写成组件的实现代码
2019/06/12 Javascript
Node.js中出现未捕获异常的处理方法
2020/06/29 Javascript
vue中选中多个选项并且改变选中的样式的实例代码
2020/09/16 Javascript
Python模拟登陆淘宝并统计淘宝消费情况的代码实例分享
2016/07/04 Python
深入浅出学习python装饰器
2017/09/29 Python
Python3.4实现远程控制电脑开关机
2018/02/22 Python
pycharm运行出现ImportError:No module named的解决方法
2018/10/13 Python
用uWSGI和Nginx部署Flask项目的方法示例
2019/05/05 Python
Python使用QQ邮箱发送邮件实例与QQ邮箱设置详解
2020/02/18 Python
如何用python 操作zookeeper
2020/12/28 Python
python中编写函数并调用的知识点总结
2021/01/13 Python
杠杆的科学教学反思
2014/01/10 职场文书
亲子拓展活动方案
2014/02/20 职场文书
法英专业大学生职业生涯规划书范文
2014/09/22 职场文书
工作时间调整通知
2015/04/24 职场文书
2016党员读书思廉心得体会
2016/01/23 职场文书
Win11 Build 22000.829更新补丁KB5015882发布(附更新修复内容汇总)
2022/07/15 数码科技