phpstudy中本地mysql数据库升级

phpstudy中本地mysql数据库升级

phpstudy是一个为php开发者提供的集成环境,主要集成了php,mysql,nginx以及apache等程序,避免了一些初级开发者一开始的程序安装问题,实现一键安装,马上开发。今天主要是讲讲phpstudy中集成的mysql版本问题,一般安装的mysql都不是最新版本,当你想使用最新的mysql特性,就没法做到兼容,所以你就很必要升级你的mysql数据库,今天自己刚好做到这个,就和大家一起分享一下, 顺便做下笔记:

1.先从mysql官网上下载windows的免安装版本。

最新下载地址是:mysql下载地址

2.备份目前mysql的数据,以防数据库丢失

3.可将当前的MySQL文件夹改名为当前版本,如MySQL5.6,也方便你后面可以切回去,不影响之前的业务操作。

4.将刚下载来的mysql-5.7.26-winx64解压至phpstudy目录中,重命名为MySQL。

注意:5.7版本解压之后,目录中是没有my.ini配置文件和data文件夹,你需要自定义一个my.ini文件,下面是一个简单的模板

   [client]
   port=3306
   [mysql]
   default-character-set=utf8mb4

   [mysqld]
   port=3306
   # 下面两项basedir和datadir根据你的目录来
   basedir="D:/phpStudy/PHPTutorial/MySQL/"
   datadir="D:/phpStudy/PHPTutorial/MySQL/data/"
   # 编码和引擎各位就怎么开心怎么来
   character-set-server=utf8mb4
   default-storage-engine=INNODB

   # explicit_defaults_for_timestamp 关闭了 timestamp 类型字段锁拥有的一些会让人感到奇怪的默认行为,加入了该参数之后,如果还需要为 timestamp类型的字段指定默认行为,那么就需要显示的在创建表时显示的指定。没有这一行在初始化的时候会报下面这个警告
   # TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
   explicit_defaults_for_timestamp=true

其中两个目录路径,要根据自身存放位置来写。

5.以管理员身份运行cmd,进入D:/phpStudy/PHPTutorial/MySQL/bin中,执行mysqld --initialize命令

   mysqld --initialize (如果之前有安装过mysql,现执行mysqld remove卸掉mysqld)

注意:my.ini文件里面的目录路径和配置一定要写对。

接着再进行mysql安装

   mysqld install

安装成功后就可以启动mysql服务,命令行如下:

   net start mysql 启动
   net stop mysql 关闭

6. 启动完mysql服务后,就可以对mysql进行连接访问,但是现在默认的mysql数据库密码不是root,你需到MySQL/data下找到一个.err扩展名的文件,进入文件找到一串不规则的密码。如图所示。

负责该密码连接mysql,对mysql密码进行修改。

   mysql -u root -p 连接数据库
   输入密码
   >mysql set password=password('root'); // 修改密码

注意数据库中操作必须后面加一个分号 ;

7.到这里 mysql的安装就是基本完成,现在主要是phpstudy的启动mysql有可能失败,你会发现直接命令行启动就可以 但是由phpstudy启动就会失败,这时你需要在MySQL/bin目录下执行一个命令方可解决。

   sc delete mysql

删除了mysql服务,留下mysqla服务(这里的具体原因我也还不太清楚,还需要后续研究)。总之,现在就可以通过phpstudy启动mysql

最后每天学习一点点,进步一大点。

参考链接:[https://blog.csdn.net/yt_php/article/details/81302367][a]

发表评论

电子邮件地址不会被公开。 必填项已用*标注