phpstudy2018的mysql版本升级至5.7/8.0

2020-07-17 15:23:58 查看 1230 回复 0

使用laravel执行数据迁移命令的时候报错,查看文档,说是数据库版本太低了。
解决方法是修改个程序文件或者升级数据库版本。

想了想还是升级下数据库版本吧。

升级数据库可以用最新版的phpstudy,他支持自定义数据库版本。

但是用我着没有老版的顺手,就在老版的基础上升级下吧。这个见仁见智怎么操作取决个人。

现在开始~

第一步:

下载mysql包,建议使用国内的mysql镜像下载,下载数据快点。

镜像地址:http://mirrors.sohu.com/mysql/MySQL-5.7/

后边的是版本号,下载其他版本请自行更改。

第二步:

下载的时候可以把phpstudy的mysql先服务卸载。

操作步骤:停止mysql服务->其他选项菜单->服务管理器->mysql->卸载服务。

bbbbb

第三步:

备份旧版mysql文件夹。

新版的解压进去。

cccc

第四步:

从MySQL_bak里拷贝一个my.ini放到*:\phpstudy\PHPTutorial\MySQL\bin目录里,高版本里my.ini需要放到bin目录里

我使用的my.ini内容如下:

[client]
 port=3306
 [mysql]
 default-character-set=utf8
 [mysqld]
 port=3306
 basedir="D:/phpStudy/PHPTutorial/MySQL"
 datadir="D:/phpstudy/PHPTutorial/MySQL/data/"
 character-set-server=utf8
 default-storage-engine=INNODB
 #支持 INNODB 引擎模式。修改为 default-storage-engine=INNODB 即可。
 #如果 INNODB 模式如果不能启动,删除data目录下ib开头的日志文件重新启动。
 
 max_connections=512
 
 query_cache_size=0
 tmp_table_size=32M
 
 thread_cache_size=8
 myisam_max_sort_file_size=64G
 myisam_sort_buffer_size=35M
 key_buffer_size=25M
 read_buffer_size=64K
 read_rnd_buffer_size=256K
 sort_buffer_size=256K
 
 innodb_additional_mem_pool_size=2M
 
 innodb_flush_log_at_trx_commit=1
 innodb_log_buffer_size=1M
 
 innodb_buffer_pool_size=47M
 innodb_log_file_size=24M
 innodb_thread_concurrency=8
 #新加
 innodb_file_per_table = 1
 skip-grant-tables = 1 
 #跳过权限验证
 log-error = D:/phpstudy/PHPTutorial/MySQL/data/error.log

第五步:

然后已管理员身份运行cmd,注意:管理员身份

进入这个目录:*:/soft/phpstudy/PHPTutorial/MySQL/bin

操作命令:

1.初始化mysql

执行此步,目录下会生成一个data文件夹。

mysqld --initialize-insecure --user=mysql

2.安装mysql服务

mysqld –install

3.启动mysql

net start mysql

4.登入mysql并修改密码

mysql -u root -p
直接回车,因为配置文件里配置了不进行登录验证

5.设置密码

update mysql.user set authentication_string=password('root') where user='root' and Host ='localhost';

执行完 exit退出

6.关闭mysql服务

net stop mysql

这时候启动phpstudy可能会发现mysql启动不了。

原因是手动创建mysql服务和PHPstudy创建的服务冲突了。

解决方法:退出mysql,bin目录执行
sc delete mysql
删除mysql服务,只留mysqla服务。

重启phpstudy如果没有意外就能启动了。

最后修改my.ini

因为刚才为了安装,加了一句话绕过权限验证,现在注释掉。

现在可以通过phpstudy来开启和关闭mysql啦!

不要忘记将原来的mysql里的data文件夹移到新mysql文件夹下的data文件夹里