LNMP
ubuntu16.04线上LNPM配置
一、mysql安装
- 安装mysql-server、mysql-client、libmysqlclient-dev, 需要root权限
zane@xyz:~$ sudo apt-get install mysql-server
zane@xyz:~$ apt install mysql-client
zane@xyz:~$ apt install libmysqlclient-dev
- 以上3个软件包安装完成后,使用如下命令查询是否安装成功
root@xyz:~# sudo netstat -tap | grep mysql
root@xyz:~# netstat -tap | grep mysql
tcp6 0 0 [::]:mysql [::]:* LISTEN 7510/mysqld
- 设置msyql远程访问
- 编辑mysql配置文件,把其中bind-address = 127.0.0.1注释了
vim /etc/mysql/mysql.conf.d/mysqld.cnf
- 使用root进入mysql命令行,执行如下2个命令
root@xyz:~# mysql -uroot -p
# 以权限用户root登录mysql> use mysql
# 选择mysql库mysql> SELECT host FROM user WHERE user='root'
; # 查看mysql库中user表的host的值mysql> UPDATE user SET host='%' WHERE user='root'
; # 修改host值(以通配符%的内容增加主机ip地址),当然也可以直接增加IP地址mysql> flush privileges
; # 刷新mysql的系统权限相关表mysql> SELECT host FROM user WHERE user='root'
; # 在重新查看user表时,有修改
- 重启mysql
/etc/init.d/mysql retart
- 编辑mysql配置文件,把其中bind-address = 127.0.0.1注释了
二、redis 安装
Redis默认在ubuntu的仓库中,可以使用apt安装:
$ sudo apt install redis-server
但是仓库中并不是最新版,为了使用最新的redis,我从源代码编译安装。
首先,安装基本的编译工具
$ sudo apt install build-essential tcl
-
下载redis源代码
$ cd /下载
$ curl -O http://download.redis.io/redis-stable.tar.gz
-
解压tar包
$ tar xzvf redis-stable.tar.gz
-
编译安装:
$ cd redis-stable
$ make
$ make test
$ sudo make install
-
配置redis:
- 创建redis配置目录/etc/redis
$ sudo mkdir /etc/redis
- 拷贝配置文件
$ sudo cp /下载/redis-stable/redis.conf /etc/redis
- 编辑配置文件:
$ sudo vim /etc/redis/redis.conf
- 找到supervised一行,把no改为systemd:
supervised systemd
- 找到dir一行,配置数据库的保存目录:
dir /var/lib/redis
- 保存退出
- 创建redis配置目录/etc/redis
-
创建systemd unit文件:
- 把redis配置成系统服务,创建redis.service文件:
$ sudo vim /etc/systemd/system/redis.service
- 写下如下内容:
Description=Redis In-Memory Data Store After=network.target [Service] User=redis Group=redis ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf ExecStop=/usr/local/bin/redis-cli shutdown Restart=always [Install] WantedBy=multi-user.target
- 保存退出文件。
- 把redis配置成系统服务,创建redis.service文件:
-
创建redis用户、组和目录
- 创建redis用户和组
$ sudo adduser --system --group --no-create-home redis
- 创建数据库目录,对应上面的配置:
$ sudo mkdir /var/lib/redis
$ sudo chown redis:redis /var/lib/redis
$ sudo chmod 770 /var/lib/redis
- 创建redis用户和组
-
启动redis服务
$ sudo systemctl start redis
$ sudo systemctl enable redis
-
查看redis状态
$ sudo systemctl status redis
-
重启服务
$ sudo systemctl restart redis
-
测试
使用命令行客户端连接redis服务
$ redis-cli
测试连通状态:
127.0.0.1:6379> ping
PONG
设置redis认证密码:http://www.linuxdiyf.com/linux/22528.html
redis文档:http://redis.io/documentation
三、安装nginx(ubuntu16.04.1)
简介:nginx是一个高性能的http和反向代理服务器,也是一个imap/pop3/smtp代理服务器。
-
安装nginx依赖库
- ubuntu平台可以使用如下命令
apt-get install build-essential
apt-get install libtool
- centos平台可以使用如下命令
yum -y install gcc automake autoconf libtoll make
- 安装g++
yum instal gcc gcc-c++
- ubuntu平台可以使用如下命令
-
安装pcre依赖库(http://www.pcre.org)
sudo apt-get update
sudo apt-get install libpcre3 libpcre3-dev
-
安装zlib依赖库(http://www.zlib.net)
apt-get install zlib1g-dev
-
安装ssl依赖库
apt-get install openssl
-
安装nginx(http://nginx.org)
-
下载最新版
wget http://nginx.org/download/nginx-1.11.3.tar.gz
-
解压
tar -zxvf nginx-1.11.3.tar.gz
-
进入解压目录
cd nginx-1.11.3
-
配置
./configure --prefix=/usr/local/nginx
-
编辑nginx
make
注意:这里可能会报错,提示“pcre.h No such file or directory”,具体详见:http://stackoverflow.com/questions/22555561/error-building-fatal-error-pcre-h-no-such-file-or-directory需要安装 libpcre3-dev,命令为:
sudo apt-get install libpcre3-dev
-
安装nginx:
sudo make install
-
启动nginx
sudo /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
注意:-c 指定配置文件的路径,不加的话,nginx会自动加载默认路径的配置文件,可以通过-h查看帮助命令
-
查看nginx进程:
ps -ef | grep nginx
-
-
nginx 常用命令
- 启动nginx
$ /usr/local/nginx/sbin/nginx
$ ./sbin/nginx
- 停止nginx
$ ./sbin/nginx -s stop
$ ./sbin/nginx -s quit
# -s 都是采用向nginx发送信号的方式 - nginx重新加载配置
$ ./sbin/nginx -s reload
- 指定配置文件
$ ./sbin/nginx -c /usr/local/nginx/conf/nginx.conf
# -c 表示configuration,指定配置文件 - 查看nginx版本
有两种可以查看nginx的版本信息的参数:
$ ./sbin/nginx -v
$ ./sbin/nginx -V
- 检查配置文件正确
$ ./sbin/nginx -t
nginx: [alert] could not open error log file: open() "/usr/local/nginx/logs/error.log" failed (13: Permission denied) nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok 2012/01/09 16:45:09 [emerg] 23898#0: open() "/usr/local/nginx/logs/nginx.pid" failed (13: Permission denied) nginx: configuration file /usr/local/nginx/conf/nginx.conf test failed
如果出现如上的提示信息,表示没有访问错误日志文件和进程,可以sudo(super user do)一下:
$ sudo ./sbin/nginx -t nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
如果显示如上,则表示配置文件正确,否则,会有相关提示
显示帮助信息
./sbin/nginx -h
或者
./sbin/nginx -?
- 启动nginx
四、安装supervisor
- 安装
sudo apt-get -y install supervisor
- 新建一个配置文件
sudo vim /etc/supervisor/conf.d/hg_sub.conf
- 打开控制台
supervisorctl