windows系统下部署若依前置环境配置 -- (mysql,redis,nginx)

jdk安装

https://blog.csdn.net/ychgyyn/article/details/81812241

mysql部署

安装包下载

去到下载界面(https://dev.mysql.com/downloads/mysql/5.7.html),点击 ZIP Archive 后面的 Download 下载

解压

可以将你下载的文件解压到你安装软件的文件夹,我解压到的是 E:\Software\Developer 目录当中,所以我的MySQL根目录为 E:\Software\Developer\mysql-5.7.41-winx64 (注意版本号的不同):

添加环境变量

  • 右击此电脑,点击属性->高级系统设置->环境变量
  • 在系统变量点击新建
  • 然后设置一个为 MYSQL_HOME 的变量,值为你解压MySQL后的MySQL根目录,我的是 E:\Software\Developer\mysql-5.7.41-winx64, 如果你的不同,那么注意修改。修改完成后点击确定:
  • 然后双击 Path 环境变量:
  • 在最后一行添加 %MYSQL_HOME%\bin 之后点击确定:
  • 打开 cmd 输入 mysqld --version 查看环境变量配置是否正确

初始化MySQL

在安装MySQL的根目录下(我的是 E:\Software\Developer\mysql-5.7.41-winx64)编写一个名为 my.ini 的配置文件,配置文件的内容如下:
[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
character-set-server=utf8
# MySQL端口
port = 3306
# MySQL的安装目录,需要修改为自己的
basedir=E:\Software\Developer\mysql-5.7.41-winx64
# MySQL数据库的存放目录,可以自行修改
datadir=F:\Windows\Data\MySQL
# 最大连接数
max_connections=200
# 默认存储引擎
default-storage-engine=INNODB

# 第一次登陆跳过密码验证
skip-grant-tables
找到cmd,右击以管理员身份运行,执行 mysqld --initialize --console 初始化MySQL数据库,默认生成的密码可以不用记住,因为我们已经设置过了第一次跳过密码验证:
执行安装服务的命令:
# 注意修改后面的 my.ini 配置文件的地址
mysqld install MySQL --defaults-file="E:\Software\Developer\mysql-5.7.41-winx64\my.ini"
然后我们就可以在任务管理器的服务列表看到MySQL服务:
 
初始登录MySQL并修改root密码
在管理员的 cmd 下执行 net start mysql 启动MySQL服务:
输入 mysql -uroot -p 登录MySQL的服务器,因为跳过了密码验证,不用输入密码直接回车即可登录:
执行以下密码修改root登录密码:
USE `mysql`;
# 注意修改自己的密码
UPDATE `user` SET `authentication_string` = password("您的密码") WHERE `user` = 'root';
使用flush privileges 刷新配置,不然执行下一条命令会出错;
ALTER USER 命令再修改一遍密码,否则可能会在执行SQL语句的时候抛出错误
退出MySQL服务器,注释掉前面配置的 my.ini 配置文件当中的 skip-grant-tables 这一行
执行以下命令重启MySQL服务器:
再使用 mysql -uroot -p 命令尝试登录,如果我们不输入密码那么就会登录失败,输入你设置的密码就会登录成功。

mysql命令整理

操作类型 命令格式 示例
创建数据库 CREATE DATABASE [IF NOT EXISTS] 数据库名; CREATE DATABASE mydatabase;
使用数据库 USE 数据库名; USE mydatabase;
运行SQL文件 mysql -u [用户名] -p[密码] [数据库名] < [sql文件路径] mysql -u root -pmydatabase < /path/to/your/sqlfile.sql 或者 source + 绝对路径
删除数据库 DROP DATABASE [IF EXISTS] 数据库名; DROP DATABASE mydatabase;
查看数据库列表 SHOW DATABASES; SHOW DATABASES;
查看当前数据库中的所有表 SHOW TABLES; SHOW TABLES;
查看特定表的结构(方法一) DESCRIBE [数据库名.]表名; DESCRIBE users; 或 DESCRIBE mydatabase.users;
查看特定表的结构(方法二) SHOW COLUMNS FROM [数据库名.]表名; SHOW COLUMNS FROM users; 或 SHOW COLUMNS FROM mydatabase.users;
在实际使用中,需要将命令中的[用户名][密码][数据库名][sql文件路径]替换为实际的值。如果MySQL密码不是空密码,通常建议在命令行中单独输入密码,而不是直接在命令中包含。
 

redis部署

  • 下载Windows版本Redis
例:redis-x64-3.0.504
  • 解压缩到安装目录
  • 在安装目录栏输入cmd,按回车键
  • 将Redis绑定为 Windows 服务,设置为后台启动
redis-server --service-install redis.windows.conf --loglevel verbose
或
redis-server --service-install redis.windows-service.conf --loglevel verbose
常用命令
启动服务
redis-server --service-start

停止服务
redis-server --service-stop

卸载命令
redis-server --service-uninstall

停止和启动也可以通过页面来操作
右键 此电脑 -->管理–>服务 --> 找到"Redis"
 

nginx部署

 

1、下载Nginx

Nginx官网: 点击查看 Nginx中文网:点击查看
 

2、解压Nginx

下载到本地,直接解压即可
conf:存在Nginx配置文件的目录
docs:存放Nginx文档的目录
html:存放静态html文件的目录
logs:存放Nginx日志的目录
temp:存放临时文件的目录
 
Nginx的配置文件是在conf目录下的nginx.conf文件
Nginx默认配置的端口号是 80 如果Nginx的80端口号被占用,我们就需要去修改。
或者使用 tasklist |findstr “进程名称” 命令,查找到此进程的PID号 我们要找的是nginx.exe的进程PID号,直接输入 tasklist |findstr “nginx.exe”,就可以找到对应的PID号了
然后输入 taskkill /f /t /pid pid号 ,根据PID,杀死此进程
或者输入 taskkill /f /t /im “nginx.exe” ,根据进程的名称杀死所有的进程 /f:强制杀死 /t:进程树
 

3、修改配置文件

worker_processes  1;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;


    server {
        listen       70;
        # http请求跳转https
        rewrite ^(.*)$  https://$host:443$1 permanent;
    }

    server {
        listen             443 ssl http2;
        server_name  localhost;
        
        ssl_certificate      C:/asset/windows/nginx-1.22.1/nginx-1.22.1/ssl/server.crt;  # server公钥证书
            ssl_certificate_key  C:/asset/windows/nginx-1.22.1/nginx-1.22.1/ssl/server.key;  # server私钥
        ssl_protocols        TLSv1 TLSv1.1 TLSv1.2; # 配置SSL协议版本
            ssl_session_cache    shared:SSL:10m;
            ssl_session_timeout  10m;
            ssl_ciphers  ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
            ssl_prefer_server_ciphers  on;

        location / {
            root   C:/asset/windows/nginx-1.22.1/nginx-1.22.1/html/dist;
            try_files $uri $uri/ /index.html;
            index  index.html index.htm;
        }

        location /prod-api/{
            proxy_set_header Host $http_host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header REMOTE-HOST $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_pass http://localhost:8087/;
        }

        # 避免actuator暴露
        if ($request_uri ~ "/actuator") {
            return 403;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}

4、Nginx启动

使用管理员模式打开cmd,然后进入到nginx 的解压目录,运行start nignx启动nginx;
然后在浏览器地址栏输入 localhost:80 或者https://localhost:70。根据自己的实际配置端口输入。
 
若访问浏览器出现问题时:
1、请确保nginx是否正常运行,确保使用管理员模式运行。
2、检查端口
`netstat -ano | findstr "端口号"`         # 查看本机端口是否被占用
`tasklist|findstr "端口号"`               # 用此端口的pid查看是哪个程序在占用:
`taskkill /im 应用.exe /f`                # `/f`表示强制结束应用 
`taskkill /pid {pid}`                     # 结束进程
3、扩展命令
常用命令 说明
start nginx 启动命令
nginx.exe -s stop 强制停止命令
nginx.exe -s reload 重启命令
1. 验证配置是否正确  
   > `nginx -t -c 'conf/nginx.conf对应的绝对路径'`     # E:/Tools/nginx-1.16.1/conf/nginx.conf
   > 或者直接在解压目录运行 nginx -t
2. 重启服务  
   > `nginx -s reload`             # 重新加载配置文件(访问地址`http://localhost:70`)
3. 快速停止nginx的命令(报错时,没用)
   > nginx -s stop
4. 完整停止nginx的命令
   > nginx -s quit
5. 上述不能停止时,输入以下命令停止nginx
   > ` taskkill /f /im nginx.exe`      # 【注意】'taskkill'前面有一个空格

修改点

数据库地址、数据库密码、redis地址、redis密码、日志记录路径、文件路径、vue.config.js端口
点赞

当前页面评论已关闭。

隐藏
变装