linux phpstudy 覆盖原mysql 独立mysql 取消自带mysql

前述

    本身是学java的,因为种种原因需要用到php,小菜一枚,自有服务器linux(centos7) 原有mysql(已经有其他项目在使用了)。然后有个新项目要用php,于是就找了linux 一键安装phpstudy(PHP+Apache+Mysql),安装完后才发现由于粗心没发现一键安装自带了mysql覆盖了原来的mysql,万幸的是原mysql的数据还在,只是原来的启动方式启不来了。。。于是开始了复原mysql之旅,继而修改phpstudy 的web 80端口(已经有其他项目占用了80所以得让phpstudy启用其他的端口),禁止自启自停mysql,独立mysql。。。。

 

停止phpstudy stop后

1、复原mysql

    其实也可以把旧数据都导到phpstudy自带的mysql上,但是phpstudy的启动和停止都会影响mysql的启动和停止,所以放弃了移数据的想法。

    之前的启动方式是service mysqld start,试了一下系统报了 unit xxx mysqld.service not found.

    我想应该是mysqld的服务不见了,于是从 /usr/sbin 和 /usr/bin 查看相关的mysql文件发现

        /usr/bin下my开头的一些服务文件不见了,于是就找回它们(从其他机子,或其他可运行的mysql上找到这些文件放回去)

        /usr/sbin下的mysqld文件不见了,于是就找回它

    继续执行 service mysqld start,依然报unit xxx...但好像多了一个 not found /bin/systemcl....的提示,我怀疑是系统服务不在,/usr/lib/systemd/system进入找回它们mysqld@.service 和 mysqld.service

    继续执行发现错误信息变了,但提示 see ... message detail,意思是让人去看详细日志

    进入/var/log/ 查看message 发现

        有一些我复制找回来的文件没有执行权限 chmod u+x 修复它

        有一些我复制找回来的文件没有读写权限 chmod 777 修复它

        xxx.pid不存在,创建它修改my.conf的pid指向等等

        有些文件夹不存在,create it...(比如/var/lib/mysql-files)

       【有时报了

       Unable to determine if daemon is running: Inappropriate ioctl for device

       mysqld.service: control process exited, code=exited status=1

       此时就需要去看/var/log/mysqld.log了【如果是service mysql start就看mysql.log】因为message告诉我们系统在Starting MySQL Server...了所以有错误就需要去看mysqld.log启动日志

       经查看报/usr/sbin/mysqld: Can't create/write to file '/var/run/mysqld/mysqld.pid' (Errcode: 2 - No such file or directory),说是mysqld.pid不能写,于是创建这个目录

       】

        不断的启动并查看message的提示。。。。

哈哈,至此mysql启动成功,还原成功

 

 

2、废弃phpstudy自带的mysql ,把mysql独立出来

    旧mysql是还原了,但是在启动phpstudy start / stop的时候,mysql会随便它 start 和 stop,于是需要去除phpstudy与mysql的硬性关联。

    在/usr/bin下查找phpstudy启动脚本(它指向的是/phpstudy/phpstudy.sh),发现它执行了mysql   

              

    注释掉 /phpstudy/mysql/support-files/mysql.server start

    并在do_stop中注释掉killall mysqld

    到此取消了mysql的随phpstudy自启自停(本来是要启动试试phpstudy的,但是在phpstudy启动脚本中发现了httpd Apache的相关操作,考虑到服务器上之前运行了禅道也是使用了Apache 所以得继续优化这个脚本)

 

3、优化phpstudy中的Apache

    继续打开/usr/bin/phpstudy脚本

    将do_stop中的killall httpd注释,并增加一行/phpstudy/server/httpd/bin/apachectl stop (停止apache的操作)

    将do_restart中的killall httpd注释,并增加一行/phpstudy/server/httpd/bin/apachectl stop (停止apache的操作)

    将virtualhost *:80的端口改为自己定义例如8081,然后保存

    phpstudy启动脚本修改完成

    接下来修改apache的脚本,打开/phpstudy/server/httpd/conf/httpd.conf

    将Listen 80的端口修改为自己定义例如8081

    将VirtualHost *:80的端口修改为自己定义例如8081

    apache的脚本修改完成

 

4、测试

    phpstudy start 启动没有问题

    phpstudy restart 重启没有问题,访问正常,其apache的程序也不影响

    phpstudy stop 停止没有问题,停止后查看mysql,mysql 线程依然存在  

 

 

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值