解决在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执行速度全攻略(上)
Oct 09 PHP
模板引擎Smarty深入浅出介绍
Dec 06 PHP
PHP 地址栏信息的获取代码
Jan 07 PHP
解析CodeIgniter自定义配置文件
Jun 18 PHP
解析PHP实现下载文件的两种方法
Jul 05 PHP
php curl获取网页内容(IPV6下超时)的解决办法
Jul 16 PHP
PHP中判断变量为空的几种方法小结
Nov 12 PHP
PHP PDOStatement:bindParam插入数据错误问题分析
Nov 13 PHP
利用浏览器的Javascript控制台调试PHP程序
Jan 08 PHP
详解WordPress中用于合成数组的wp_parse_args()函数
Dec 18 PHP
Laravel 5.3 学习笔记之 配置
Aug 28 PHP
PHP PDOStatement::getAttribute讲解
Feb 01 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的实现(吐血推荐)
2008/10/04 PHP
php cookie 作用范围?不要在当前页面使用你的cookie
2009/03/24 PHP
PHP extract 将数组拆分成多个变量的函数
2010/06/30 PHP
PHP 使用header函数设置HTTP头的示例解析 表头
2013/06/17 PHP
php生成固定长度纯数字编码的方法
2015/07/09 PHP
thinkphp3.x连接mysql数据库的方法(具体操作步骤)
2016/05/19 PHP
php 解决扫描二维码下载跳转问题
2017/01/13 PHP
IE和Mozilla的兼容性汇总event
2007/08/12 Javascript
JavaScript中的其他对象
2008/01/16 Javascript
nodejs实用示例 缩址还原
2010/12/28 NodeJs
javascript中的事件代理初探
2014/03/08 Javascript
javascript将数字转换整数金额大写的方法
2015/01/27 Javascript
基于jQuery插件实现环形图标菜单旋转切换特效
2015/05/15 Javascript
jQuery实现可移动选项的左右下拉列表示例
2016/12/26 Javascript
详解Windows下安装Nodejs步骤
2017/05/18 NodeJs
node.js操作MongoDB的实例详解
2017/10/11 Javascript
node.js的exports、module.exports与ES6的export、export default深入详解
2017/10/26 Javascript
微信小程序实现滚动消息通知
2018/02/02 Javascript
基于datepicker定义自己的angular时间组件的示例
2018/03/14 Javascript
angular 用Observable实现异步调用的方法
2018/12/27 Javascript
Angular4.0动画操作实例详解
2019/05/10 Javascript
JS实现滑动导航效果
2020/01/14 Javascript
vue 微信分享回调iOS和安卓回调出现错误的解决
2020/09/07 Javascript
windows系统下Python环境的搭建(Aptana Studio)
2017/03/06 Python
Django基础知识与基本应用入门教程
2018/07/20 Python
Python模拟百度自动输入搜索功能的实例
2019/02/14 Python
利用Python复制文件的9种方法总结
2019/09/02 Python
Python3 操作 MySQL 插入一条数据并返回主键 id的实例
2020/03/02 Python
Python web框架(django,flask)实现mysql数据库读写分离的示例
2020/11/18 Python
无需JS和jQuery代码实现CSS3鼠标浮动放大图片
2016/11/21 HTML / CSS
Love, Bonito国际官网:新加坡女装品牌
2021/03/13 全球购物
文科教师毕业的自我评价
2014/01/16 职场文书
祝福语集锦:给满月宝宝的祝福语
2019/11/20 职场文书
python 实现图与图之间的间距调整subplots_adjust
2021/05/21 Python
MySQL库表名大小写的选择
2021/06/05 MySQL
CSS Transition通过改变Height实现展开收起元素
2021/08/07 HTML / CSS