1、下载nginx
http://nginx.org/en/download.html
2、下载openssl
https://www.openssl.org/source/
3、下载 pcre安装
https://sourceforge.net/projects/pcre/files/pcre/
4、下载zlib
zlib Home Site
1、安装prce
//解压
# cd /opt/app/
# /opt/app/tar -zxvf pcre2-10.39.tar.gz
//进目录
#cd pcre-10.39
//编译
#./configure
//安装
#make && make install
//查看版本
# pcre-config --version
2、安装openssl:
//解压
# cd /opt/app/
#tar -zxvf openssl-3.0.1.tar.gz
//进目录
#cd openssl-3.0.1
//编译
#./config
//安装
# make && make install
3、安装zlib:
//解压
# cd /opt/app/
#tar -zxvf zlib-1.2.11.tar.gz
//进目录
#cd zlib-1.2.11
//编译
#./configure
//安装
#make && make install
4、安装nginx:
//解压
# cd /opt/app/
#tar -zxvf nginx-1.22.0.tar.gz
//进目录
#cd nginx-1.22.0
//编译,nginx和openssl的版本适配
#./configure --prefix=/usr/local/nginx --with-stream --with-http_flv_module --with-http_stub_status_module --with-http_ssl_module --with-pcre --with-http_gzip_static_module --with-openssl=/opt/app/openssl-3.0.1
//安装
#make && make install
5、启动nginx:
//启动命令
#./nginx
//关闭
#./nginx -s stop
//强制关闭nginx服务
#pkill nginx
//重新加载
#nginx -s reload
如果需要配置nginx随机启动,请参考:
Linux配置nginx开机自启_YXWik6的博客-CSDN博客_linux nginx开机自启动
Redis
//解压
#tar -zvxf redis-6.2.6.tar.gz
//复制目录
#mv /home/user/redis-6.2.6 /usr/local/redis
//编译
#make
//安装
#make PREFIX=/usr/local/redis install
PREFIX= 这个关键字的作用是编译的时候用于指定程序存放的路径。比如我们现在就是指定了redis必须存放在/usr/local/redis目录。假设不添加该关键字Linux会将可执行文件存放在/usr/local/bin目录,
库文件会存放在/usr/local/lib目录。配置文件会存放在/usr/local/etc目录。其他的资源文件会存放在usr/local/share目录。这里指定号目录也方便后续的卸载,后续直接rm -rf /usr/local/redis 即可删除redis。
配置守护进程、其他ip可访问:
# bind 127.0.0.1
#保护模式
protected-mode no
#守护进程
daemonize yes
# 设置访问密码
requirepass 密码
# arm架构下出现无法启动配置如下
ignore-warnings ARM64-COW-BUG
//启动redis
#./bin/redis-server& ./redis.conf
//配置随机启动
将启动命令配置到/etc/rc.local中
redis-cli -h 127.0.0.1 -p 6379 -a 密码
或者:
redis-cli
> auth 密码
查询redis版本:
> info
备份:
redis 127.0.0.1:6379> SAVE
该命令将在 redis 安装目录中创建dump.rdb文件。
恢复:
如果需要恢复数据,只需将备份文件 (dump.rdb) 移动到 redis 安装目录并启动服务即可。获取 redis 目录可以使用 CONFIG 命令,如下所示:
redis 127.0.0.1:6379> CONFIG GET dir
MySQL :: Download MySQL Community Server (Archived Versions)
#tar xzvf mysql-5.7.27-aarch64.tar.gz -C /data/app/
#mv /data/app/mysql-5.7.27-aarch64 /data/app/mysql
#mkdir -p /data/app/mysql/logs
# 添加mysql用户组
#groupadd mysql
# 添加mysql用户
#useradd -g mysql mysql -d /home/mysql
#chown -R mysql:mysql /data/app/mysql
#ln -sf /data/app/mysql/my.cnf /etc/my.cnf
可以自定义目录,如下是例子:
basedir=/data/app/mysql
datadir=/data/app/mysql/data
socket=/tmp/mysql.sock
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
#cp -rf /data/app/mysql/support-files/mysql.server /etc/init.d/mysqld
#chmod +x /etc/init.d/mysqld
#systemctl enable mysqld
# vim /etc/profile
添加下面两行代码:
export MYSQL_HOME=/usr/local/mysql
export PATH=$PATH:$MYSQL_HOME/bin
# source /etc/profile
mysqld --initialize --user=mysql --basedir=/data/app/mysql --datadir=/data/app/mysql/data
#开启mysql
# systemctl start mysqld
#查看状态
# systemctl status mysqld
grep "password" /var/log/mysqld.log
mysql -u root -p 进行登录
当出现:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
就在/etc/my.cnf的[mysqld]下添加一行,使其登录时跳过权限检查
skip_grant_tables
然后重启systemctl restart mysqld
如果出现:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (111)
可以使用:
mysql -u root -p -S /var/lib/mysql/mysql.sock
然后进入mysql命令行:
UPDATE user SET authentication_string=PASSWORD('密码')WHERE user='root';
flush privileges;
然后注释掉skip_grant_tables,重启mysql,用新密码进入。
当输入任何命令出现“You must reset your password using ALTER USER statement before executing this statement.”
就先执行:
alter user user() identified by "新的密码";
授权访问:
alter user 'root'@'%' identified by '新的密码';
grant all privileges on *.* to 'root'@"%" identified by "新的密码";
flush privileges;