华为鲲鹏云服务器上搭建LAMP环境

Mrzhou
Mrzhou
Mrzhou
257
文章
1
评论
2019年7月10日06:42:30 评论 589

何为LAMP,简单来说就是一组通常一起使用来运行动/态网站或者服务器的自由软件的名称首字母缩写(百度百科),包括linux, apache2, MySQL(MariaDB), php等,最重要的是因为它们廉价和普遍。

安装步骤

我们首先需要安装apache2

apt install apache2

安装完成以后我们可以通过 查看状态

systemctl status apache2
AH00558: apache2: Could not reliably determine the server's fully qualified domain name

如果出现这个错误的话只要去/etc/apache2修改apache2.conf

在最后一行添加 就可以了

ServerName localhost

此时我们就可以访问web服务器了

华为鲲鹏云服务器上搭建LAMP环境

接下来我们安装php

这个基本没什么难度,不过我们要让Apache2优先提供php网页,修改

/etc/apache2/mods-enabled/dir.conf

将index.php同index.html位置对调

DirectoryIndex index.php index.cgi index.pl index.html index.xhtml index.htm

此时访问我们的服务器 http://公网ip/index.php

华为鲲鹏云服务器上搭建LAMP环境

接来下重点来了 - MySQL的安装,我们使用华为云开源镜像中的5.6.44版本

下载地址

以下内容还原于http://arm.cloud-onlinelab.cn/安装指导

1. 依赖安装
apt install gcc g++ libaio*
 
2. 添加mysql用户组和mysql用户,用于隔离mysql进程
groupadd -r mysql && useradd -r -g mysql -s /sbin/nologin -M mysql
 
3. 下载解压Mysql安装包
[root@arm ~]# wget https://obs.cn-north-4.myhuaweicloud.com/obs-mirror-ftp4/database/mysql-5.6.44-aarch64.tar.gz
[root@arm ~]# tar xzvf mysql-5.6.44-aarch64.tar.gz -C /usr/local/
[root@arm ~]# rm -rf xzvf mysql-5.6.44-aarch64.tar.gz
 
4. 配置Mysql
[root@arm ~]# mv /usr/local/mysql-5.6.44-aarch64 /usr/local/mysql
[root@arm ~]# chown -R mysql:mysql /usr/local/mysql  
[root@arm ~]# rm –rf /etc/my.cnf
[root@arm ~]# cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
[root@arm ~]# vi /etc/my.cnf

以上为止都没有什么问题,但接下去却让我苦恼了好久。

[mysqld]
...
  basedir = /usr/local/mysql
  datadir = /usr/local/mysql/data
  port = 3306
...
这里没有[client]参数,我们留到安装完再来解决
 
# 设置开机启动
[root@arm ~]# cp -rf /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld  
[root@arm ~]# chmod +x /etc/init.d/mysqld
[root@arm ~]# systemctl enable mysqld
 
5. 添加Mysql环境变量
[root@ecs-arm ~]# vi /etc/profile
export MYSQL_HOME=/usr/local/mysql
export PATH=$PATH:$MYSQL_HOME/bin
[root@ecs-arm ~]# source /etc/profile
 
6. 初始化Mysql
[root@arm ~]# cd /usr/local/mysql
[root@arm mysql]# scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
 
7. 启动登录mysql
[root@arm mysql]# systemctl start mysqld
# 查看状态
[root@arm mysql]# systemctl status mysqld

到这我们安装是完成了,但是如果运行

mysql -uroot -p

则会报错,是因为我们没有指定socket

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'

如果要使用tcp的话我们不得不指定端口以及地址

mysql -uroot -P 3306 -h 127.0.0.1 -uroot -p

那如何设置unix socket呢?

[client]
port = 3306
socket = /tmp/mysql.sock
 
[mysqld]
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
# 除了basedir, datadir 我们还需要指定socket
port = 3306
socket = /tmp/mysql.sock
user = mysql

这样我们的mysql才算真正安装完毕。

最后我们来安装phpmyadmin

apt install phpmyadmin

本来按理说应该是一步到位的事情,可惜还是花了我很长时间解决

#2002 - No such file or directory — The server is not responding (or the local server's socket is not correctly configured)

还是socket的原因,为此我翻遍了谷歌百度,Stackoverflow

最后定位到

/etc/phpmyadmin/config.inc.php

修改成以下

/* Server parameters */
$cfg['Servers'][$i]['socket'] = '/tmp/mysql.sock';
if (!empty($dbport) || $dbserver != 'localhost') {
    $cfg['Servers'][$i]['connect_type'] = 'tcp';
    $cfg['Servers'][$i]['host'] = '127.0.0.1';
    $cfg['Servers'][$i]['port'] = '3306';
}

终于大功告成,我们的LAMP环境就此完成了!

继续阅读
Mrzhou
  • 本文由 发表于 2019年7月10日06:42:30
  • 转载请务必保留本文链接:https://zhouxiaosong.com/1843.html
如何手动清理C盘垃圾文件 网络运维

如何手动清理C盘垃圾文件

虽然我们平时经常用使用一些清理工具,但也只能删除一些表面垃圾,它不会去自动触碰那些被系统隐藏甚至保护的文件,所以,更多时候还是需要我们手动处理。与此同时出现的问题就是,哪些文件可以删除? 自动清理 如...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: