ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
# lnmp官网 [https://lnmp.org/install.html](https://lnmp.org/install.html) 演示系统用的是 ![](https://img.kancloud.cn/fe/d3/fed3f5a16500f68efdfba4dfd1bca115_185x78.png) ## 第一步: 登陆后运行:**screen -S lnmp** ![](https://img.kancloud.cn/ea/74/ea7496ce6b5e6e294348a3ab31433427_394x102.png) 如果提示screen: command not found 命令不存在可以执行:yum install screen 或 apt-get install screen安装 ![](https://img.kancloud.cn/7c/ac/7cac4231f2571251152567f67d5d066e_1882x722.png) 然后安装完成了,输入**screen -S lnmp** ![](https://img.kancloud.cn/65/bd/65bd7610408dd7a6a8af7d206001d1e3_310x54.png) 这一步就搞定了 ## 第二步: 一键安装命令是: **wget http://soft.vpser.net/lnmp/lnmp1.7.tar.gz -cO lnmp1.7.tar.gz && tar zxf lnmp1.7.tar.gz && cd lnmp1.7 && ./install.sh lnmp** 但是:注意了 lnmp提供更改 数据库和网站安装目录,如需更改网站和数据库目录、需在运行./install.sh 命令前修改安装包目录下的 lnmp.conf 文件。 (1)你不需要更改目录,跳过这个操作,如果你需要更改安装的目录则: 运行一下这个命令: **wget http://soft.vpser.net/lnmp/lnmp1.7.tar.gz -cO lnmp1.7.tar.gz && tar zxf lnmp1.7.tar.gz && cd lnmp1.7 ** 先不执行这个./install.sh lnmp。 ① 要去编辑lnmp.conf 文件: ![](https://img.kancloud.cn/e7/de/e7deaa1d3582f91c001141c05ec20795_622x276.png) ② 输入,vim lnmp.conf ,编辑你要更改的目录,比例这个是放在/mnt/sdc下面的 ![](https://img.kancloud.cn/a8/3e/a83e4afd8859034cc2a45ab9be63ca10_545x432.png) ![](https://img.kancloud.cn/d7/a5/d7a59840f7d026f433bc31104a8f70bb_729x430.png) 更改后保存 文件 ③ 执行 **./install.sh lnmp** 命令安装 (2)一般不要求直接默认安装,则直接运行一键安装命令就行了, 一键安装命令是: **wget http://soft.vpser.net/lnmp/lnmp1.7.tar.gz -cO lnmp1.7.tar.gz && tar zxf lnmp1.7.tar.gz && cd lnmp1.7 && ./install.sh lnmp** ## 第三步: ![](https://img.kancloud.cn/75/03/7503caa11e64ffa4d659ec79bf7574d9_590x330.png) 输入对应MySQL或MariaDB版本前面的序号,**我这里是输入3**,回车进入下一步. 就是输入密码 ![](https://img.kancloud.cn/81/10/8110dc10026d76aebbda73bb3bfc6f45_570x408.png) 设置MySQL的root密码(为了安全不输入直接回车将会设置为lnmp.org#随机数字)如果输入有错误需要删除时,可以按住Ctrl再按Backspace键进行删除(个别情况下是只需要Backspace键)。输入后回车进入下一步,如下图所示: ![](https://img.kancloud.cn/33/23/33230ea3145be3294c6e573849d7920c_576x448.png) ## 第四步: ![](https://img.kancloud.cn/18/17/1817e07f709aab3d7ee26a5bc23ad84b_441x65.png) 询问是否需要启用MySQL InnoDB,InnoDB引擎默认为开启,一般建议开启,直接回车或输入 y ,如果确定确实不需要该引擎可以输入 n,(MySQL 5.7+版本无法关闭InnoDB),输入完成,回车进入下一步。**我们这里是输入y** ## 第五步: ![](https://img.kancloud.cn/dc/30/dc30752c06546063af807a689770736b_493x314.png) 注意:选择PHP 7+版本时需要自行确认PHP版本是否与自己的程序兼容。**我们这里是输入6 选择7.0** ## 第六步: ![](https://img.kancloud.cn/01/b8/01b8d73d50c60cf9d1e9e7ad508af7aa_408x112.png) 选择是否安装内存优化: 可以选择不安装、Jemalloc或TCmalloc,输入对应序号回车,直接回车为默认为不安装。 **我们这里是直接回车为默认为不安装** ## 第七步: ![](https://img.kancloud.cn/11/de/11decf47c62dbf7216fd9f604c3a4432_530x180.png) 提示"Press any key to install...or Press Ctrl+c to cancel"后,**按回车键确认开始安装**。 LNMP脚本就会自动安装编译Nginx、MySQL、PHP、phpMyAdmin等软件及相关的组件。 安装时间可能会几十分钟到几个小时不等,主要是机器的配置网速等原因会造成影响。 ## 第八步: ![](https://img.kancloud.cn/56/7a/567aa0bc7b6e880f07fd861d26088d3f_923x795.png) 并且Nginx、MySQL、PHP都是running,80和3306端口都存在,并提示安装使用的时间及Install lnmp V1.6 completed! enjoy it.的话,说明已经安装成功 可以按Ctrl+c退出。 ## 第九步: 然后查看对接安装的目录 默认的是/home/wwwroot/ 更改的在你更改的目录下 这时候还没有绑定域名,你可以直接用ip访问,将看到如下页面: ![](https://img.kancloud.cn/d3/c7/d3c71205db5e2c1f53401227aafdecb0_1598x689.png) 到这一步,环境已经搭建好了。 ## 第十步: ### 处理数据库配置 ![](https://img.kancloud.cn/40/51/40517b53993aaa7a29ad5da34c94ac7e_665x429.png) 这样发现远程连接数据库还是有问题,因为防火墙3306端口限制 这里禁止用root登录操作,所以我们先到phpmyadmin web登录root 创建账号, ![](https://img.kancloud.cn/d7/56/d75643b9100522f0c945b9381dfdadec_1517x720.png) ![](https://img.kancloud.cn/49/30/49306f670d9088b04678d0dbec78dcd4_819x408.png) ![](https://img.kancloud.cn/35/bb/35bb381663e84e331a3026462a4097d1_1675x828.png) 账号创建好了,接着处理端口问题 先开启远程连接数据库,后面不需要远程再关端口 先打开防火墙 vim /etc/sysconfig/iptables ![](https://img.kancloud.cn/48/65/4865f9a8fe6f21c3fc64525e96472c02_605x364.png) 看到 ~~~ A INPUT -p tcp -m tcp --dport 3306 -j DROP ~~~ 然后吧 DROP 换成 ACCEPT ~~~ A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT ~~~ ![](https://img.kancloud.cn/fc/d3/fcd30b818df158a2ac753290c19ff20c_488x232.png) 然后重启防火墙: ~~~ service iptables restart ~~~ ![](https://img.kancloud.cn/05/a5/05a5e0e794f870f3eeaf18b3181cdbad_426x64.png) 阿里云也要配置端口 ![](https://img.kancloud.cn/0b/ba/0bba84b90f452b8ed0f793f5581ba2eb_1595x211.png) 这就可以连接远程访问了 ![](https://img.kancloud.cn/cf/4a/cf4a21cb5e115a54591bb0a7c8d9eeac_501x433.png) 然后把需要的表导进去 # 到这里你以为就完事了吗?还要开启mysql binglog 日志,开启慢查询 ## ①开启mysql binglog 日志 查看是否开启mysqlbinglog ~~~ show VARIABLES like '%log_bin%' ~~~ ![](https://img.kancloud.cn/5d/54/5d54fc008f0b861918372a1cf15062d6_519x244.png) 以上是开启了的,如果不开启这是OFF lnmp 发现默认开启了,cat /etc/my.cnf ![](https://img.kancloud.cn/66/a6/66a64127ef4950c1ecf1708ab4d5c3a3_440x322.png) 查看mysqlbinglog日志 ~~~ mysqlbinlog --no-defaults --database=数据库名称 --start-datetime="2018-11-10 23:29:00" --base64-output=DECODE-ROWS --stop-datetime="2018-11-10 23:30:50" mysql-bin.000012 > /mysql.txt ~~~ ~~~ 查询 tp_users 写入到znwg.sql文件 /usr/local/mysql/bin/mysqlbinlog --no-defaults --database="znwg_live" --base64-output=decode-rows -v --start-datetime="2020-05-14 15:30:00" --stop-datetime="2020-05-14 18:40:00" ./mysql-bin.000028 | grep tp_users > znwg.sql 写入到znwg.sql文件 /usr/local/mysql/bin/mysqlbinlog --no-defaults --database="znwg_live" --base64-output=decode-rows -v --start-datetime="2020-05-14 15:30:00" --stop-datetime="2020-05-14 18:40:00" ./mysql-bin.000028 > znwg.sql 直接打印输出 /usr/local/mysql/bin/mysqlbinlog --no-defaults --database="znwg_live" --base64-output=decode-rows -v --start-datetime="2020-05-14 15:30:00" --stop-datetime="2020-05-14 18:40:00" ./mysql-bin.000028 ~~~ ~~~ 备注: --start-datetime (开始时间) --base64-output=DECODE-ROWS (以防乱码) --stop-datetime (结束的时间) ~~~ ~~~ 查看mysqlbinglog日志 mysqlbinlog -d 数据库名称 --base64-output=DECODE-ROWS -v mysql-bin.000046 根据时间来查看: --start-datetime="2019-2-23 23:59:59" --stop-datetime="2019-2-25 16:50:59" 说明: --base64-output=DECODE-ROWS (解码导出,导出后可直接查看) 在MySQL5.5以下版本使用mysqlbinlog命令时如果报错,就加上 “--no-defaults”选项 ~~~ ## ①开启mysql 慢日志查询 ![](https://img.kancloud.cn/61/6f/616fd195e085dd5a5a7b4e72154df9ec_598x377.png) ~~~ 在数据库里面运行,查询是否开启 show variables like '%quer%'; 看到尾off 代表没有开启 在/etc/my.cnf 加入以下图片 slow_query_log = 1 long_query_time = 1 slow_query_log_file = /home/mysql/mysql-slow.log ~~~ ![](https://img.kancloud.cn/6d/bb/6dbbdf50a08d6e3eb0dd380fab05d26f_547x219.png) ~~~ 重启数据库 /etc/init.d/mysql restart 查询是否开启成功 show variables like '%quer%'; ~~~ ![](https://img.kancloud.cn/11/0d/110dd3d8b79691a3fcdc5c8888bd9195_607x392.png) ~~~ on 代表已经开启了,然后在数据库里面运行语句 超过1秒, SELECT SLEEP(3) ~~~ ![](https://img.kancloud.cn/b3/bb/b3bb7224d140afd15220f1b831c20f2b_693x170.png) ~~~ 如上可看到已经记录了,慢查询 ~~~ ## 第十一步: ### 配置上传代码 ,配置nginx 访问 有空再更新