centOS7下卸载mysql8再安装mysql5.7,然后开启php的mysqli扩展全过程,特此记录,以被后用。

我开始是php7.3.5和mysql8版本开启mysqli扩展,各种坑查了N多资料都没有解决,还源码安装了多个php版本,make编译时都报错找不到my_global.h文件,经过几番绝望的时候,意识到是不是mysql版本的问题,是不是mysql8没有这个文件,或者文件位置发生改变,find / -name my_global.h 确实没有这个文件。。报错截图如下。。。。还有不止这一个文件找不到,我vi一个空的my_global.h文件还好报错其它文件找不到。

可能是我mysql装的8版本,yum源安装mysql-devel时却是5.7版本的,导致编译时好多文件找不到,自己挖的坑。

å¾çæè¿°

好了,开始:

rpm -qa |grep -i mysql   查看yum 安装的所有mysql相关安装包。

yum remove mysql-community mysql-community-server mysql-community-libs mysql-community-common   依次删除

一定要删除干净 rpm -qa |grep -i mysql 后没有任何安装包。

然后 find / -name mysql  查看mysql相关文件  rm -rf  文件或者文件夹目录路径

mysql5.7.20安装过程

1.下载mysql yum源文件并安装

 下载:wget http://repo.mysql.com/mysql57-community-release-el7-10.noarch.rpm

 安装:rpm -Uvh mysql57-community-release-el7-10.noarch.rpm

2.安装mysql服务端需要等待一段时间

命令:yum install  -y  mysql-community-server

3.开启mysql

命令:service mysqld start

查看mysql是否启动命令:service mysqld status

4.进入mysql 修改密码

查看初始密码命令:grep "password" /var/log/mysqld.log

修改密码过于简单会报错

这一错误其实与validate_password_policy值的设置有关

validate_password_policy值默认为1,即MEDIUM,所以刚开始设置的密码必须符合长度要求,且必须含有数字,小写或大写字母,特殊字符

如果我们只是做为测试用而不需要如此复杂的密码,可使用如下方式修改validate_password_policy值

命令:set global validate_password_policy=0;

密码的最小长度由validate_password_length值决定,validate_password_length参数默认为8

修改长度命令:set global validate_password_length=4;

修改密码命令:SET PASSWORD FOR 'root'@'localhost' = PASSWORD('root');

配置mysql远程链接:GRANT ALL PRIVILEGES ON *.* TO 'root' @'%' IDENTIFIED BY 'root' WITH GRANT OPTION;

刷新权限: flush privileges;

如果Navicat远程无法访问 ,有可能是防火墙没有关闭的问题。

exit退出重进进入mysql输入root密码登陆成功,mysql5.7安装完成;

开启php7的mysqli扩展

1、到php源码包文件ext下的mysqli      

2、在mysqli文件夹下执行 运行   你  phpize文件的绝对路径/phpize  生成configure文件

附:find / -name phpize  查看文件目录命令

3、在mysqli文件夹下执行 ./configure --with-php-config=你php-config文件的绝对路径 --with-mysqli=你mysql_config文件的绝对路径   

如果没有mysql_config文件,需要安装mysql-devel ,执行命令:yum install mysql-devel     

4、make  (如果你之前make编译过 先 make clean  下)

make后会报错说没有  ext/mysqlnd/mysql_float_to_double.h  这个文件  截图如下

 

解决办法 把 mysqli_api.c 文件的  ext/mysqlnd/mysql_float_to_double.h  处改成绝对路径 

查看路径命令:find / -name mysql_float_to_double.h

命令:vi mysqli_api.c

之后还会有好几处类似的错误,依次修改成绝对路径。。。。

5、make install

6、修改php.ini 打开extension=mysqli

7、php -m 查看是否开启扩展,大功告成,希望点个赞哦!!!!

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值