PHPSTUDY下升级mysql后无法启动

起因

闲话说多了,来说正事。最近,之前的项目突然推翻重做,打算用lumen。接着呢,我就趁着调研的时间,自己过了一遍文档。(不得不说,laravel的文档有点那个。。。不详细)

本着,学习东西肯定是动手动脑最佳。于是呢,我就在github上找了一个laravel推荐的开源项目:codehaoshi。不得不说,对于以前做了一段时间的传统模式的开发,发现,现在的东西真的都挺新啊~

laravel 5.5 + vue 2.1  于是呢,我就去开始的安装之路了,顺着git上的步骤一步一步的安装时,发现这个项目在php artisan migrate 时,一直报错:

(无法截图。。。我就复制出来了)

[IlluminateDatabaseQueryException]
SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key lengt
h is 1000 bytes (SQL: alter table `users` add unique `users_user_name_unique`(`user_name`))

 

[PDOException]
SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key lengt
h is 1000 bytes

(2018.6.29 11:23 add:其实,接触过laravel的童鞋应该知道,这个问题有两种解决方案。详情见我另一片博文!http://www.cnblogs.com/mikusnail/p/9051122.html)

明眼人,一眼就看出来是什么原因了。索引字符过长呗。但是,别人都能成功,我咋不行呢~既然,能发布到git上,肯定是没啥大问题的、

所以我第一反应是mysql库的问题,所以我正打算琢磨去升级我本地数据库版本的问题时,我一个也是做PHP的同学,他现在公司项目就是Laravel,和我说了下,并帮我直接google到问题了~~~

 

这就证明了,我的猜测是正确的。(2018.06.29 11:24 add : 反正升级,我没解决~~~)

于是,我就开始了我的升级phpstudy数据库之路。

(此处就不再赘述升级的方法了,baidu上的都说的很清楚,需要注意的是,在mysqld -initialize时,注意查看USER-20160401VS.err文件中的报错,有助于你升级成功!!目前5.7版本和之前的一些配置有些不一样。列如:之前的table_cache,现在是table_open_cache。当然,这些都是我对着错误,百度出来的。。。算是血泪史吧。。

正文

下面说说重点,就是在一切都弄好之后,发现phpstudy中点击启动按钮,只能启动apache的服务,mysql一直处于红点状态(起不来)。但是查看windows下的服务是可以手动起来的~~~

最神奇的是,手动起来后,phpstudy中的mysql就变成绿点了,这就说明mysql其实是升级成功了,但是现在就是如何关联phpstudy的问题。

因为,我已经弄好了,无法截图。就直接说吧,你们打开windows服务后,你会发现在服务中有:mysql mysqla的服务。

网上有人说两者冲突了,emmmmm至于冲突这种说法,我没有试验过,不敢确定。但是唯一可以肯定的是:其中的mysql服务是你自己想要升级版本mysql启动的服务,而与之相对的是,mysqla是你的phpstudy帮你生成的服务。那说道这边,有些同学会问了,那说了这么久,你还是没说为什么phpstudy会起不来mysql的服务。

其实说到这边,我已经说的很明确了。mysqla既然是phpstudy帮你注册的服务,那你自己mysqld -install的注册的服务是mysql。那只要,在服务列表中让phpstudy生成一个mysqla的服务就行了啊!

哈哈哈,聪明,那怎么做?删除之前的集成好的mysqla服务,打开phpstudy找到服务管理-->mysql-->安装服务!好了!这时候,就是你的时间了。link start~

 

原文地址:https://www.cnblogs.com/mikusnail/p/8422013.html