本文介绍如何以二进制安装包方式手动部署最新版 StarRocks 3.0集群。

什么是 StarRocks

StarRocks 是新一代极速全场景 MPP (Massively Parallel Processing) 数据库。StarRocks 的愿景是能够让用户的数据分析变得更加简单和敏捷。用户无需经过复杂的预处理,就可以用 StarRocks 来支持多种数据分析场景的极速分析。

StarRocks 架构简洁,采用了全面向量化引擎,并配备全新设计的 CBO (Cost Based Optimizer) 优化器,查询速度(尤其是多表关联查询)远超同类产品。

StarRocks 能很好地支持实时数据分析,并能实现对实时更新数据的高效查询。StarRocks 还支持现代化物化视图,进一步加速查询。

使用 StarRocks,用户可以灵活构建包括大宽表、星型模型、雪花模型在内的各类模型。

StarRocks 兼容 MySQL 协议,支持标准 SQL 语法,易于对接使用,全系统无外部依赖,高可用,易于运维管理。StarRocks 还兼容多种主流 BI 产品,包括 Tableau、Power BI、FineBI 和 Smartbi。

适用场景

StarRocks 可以满足企业级用户的多种分析需求,包括 OLAP (Online Analytical Processing) 多维分析、定制报表、实时数据分析和 Ad-hoc 数据分析等。

OLAP 多维分析

利用 StarRocks 的 MPP 框架和向量化执行引擎,用户可以灵活的选择雪花模型,星型模型,宽表模型或者预聚合模型。适用于灵活配置的多维分析报表,业务场景包括:

  • 用户行为分析

  • 用户画像、标签分析、圈人

  • 高维业务指标报表

  • 自助式报表平台

  • 业务问题探查分析

  • 跨主题业务分析

  • 财务报表

  • 系统监控分析

实时数据仓库

StarRocks 设计和实现了 Primary-Key 模型,能够实时更新数据并极速查询,可以秒级同步 TP (Transaction Processing) 数据库的变化,构建实时数仓,业务场景包括:

  • 电商大促数据分析

  • 物流行业的运单分析

  • 金融行业绩效分析、指标计算

  • 直播质量分析

  • 广告投放分析

  • 管理驾驶舱

  • 探针分析APM(Application Performance Management)

高并发查询

StarRocks 通过良好的数据分布特性,灵活的索引以及物化视图等特性,可以解决面向用户侧的分析场景,业务场景包括:

  • 广告主报表分析

  • 零售行业渠道人员分析

  • SaaS 行业面向用户分析报表

  • Dashboard 多页面分析

统一分析

  • 通过使用一套系统解决多维分析、高并发查询、预计算、实时分析查询等场景,降低系统复杂度和多技术栈开发与维护成本。

  • 使用 StarRocks 统一管理数据湖和数据仓库,将高并发和实时性要求很高的业务放在 StarRocks 中分析,也可以使用 External Catalog 和外部表进行数据湖上的分析。

前提条件

在部署生产环境 StarRocks 之前,请确保如下环境要求已满足。

说明

  • 如果您想在 Ubuntu 22.04 或 ARM 架构处理器上运行 StarRocks,则需要从 StarRocks Docker Hub 下载并运行特定标签的 Docker 镜像,并从 Docker 容器目录 /data/starrocks 下复制二进制文件到您的主机。

  • 依据不同的工作负载复杂性,StarRocks 每个 CPU 线程每秒可以处理 10M 至 100M 行数据。您可以据此估计集群中需要多少 CPU 线程能够满足您的要求。而 StarRocks 在存储数据时利用列存储和压缩,可以达到 4-10 倍的压缩比,您可以使用该数据来估计集群所需的存储量。

  • StarRocks 仅支持 JDK 作为依赖,不支持使用 JRE。

    系统参数配置

关闭Transparent Huge Pages 与 部分内核参数
echo never > /sys/kernel/mm/transparent_hugepage/enabledchmod +x /etc/rc.d/rc.localecho "echo never > /sys/kernel/mm/transparent_hugepage/enabled" >>/etc/rc.d/rc.local
echo "echo 120000 > /proc/sys/kernel/threads-max" >>/etc/rc.d/rc.local
echo "echo 60000  > /proc/sys/vm/max_map_count" >>/etc/rc.d/rc.local
echo "echo 200000 > /proc/sys/kernel/pid_max" >>/etc/rc.d/rc.local

编辑 /etc/sysctl.conf ,调整内核参数vm.overcommit_memory=1vm.swappiness=0vm.min_free_kbytes = 10551236vm.max_map_count=655350fs.aio-max-nr = 1048576fs.nr_open=20480000fs.file-max = 76724600net.core.somaxconn = 65535net.core.netdev_max_backlog = 65535net.ipv4.tcp_max_syn_backlog = 65535net.ipv4.tcp_abort_on_overflow=1
内核参数生效sysctl -p

安装JDK

 tar -zxvf /opt/jdk1.8.0_221.tar.gz -C /opt/

添加环境变量  /root/.bash_profile

下载并解压安装包

下载 StarRocks 分发各节点并解压二进制安装包。

 tar -zxvf /opt/StarRocks-3.0.0-rc02.tar.gz -C /opt

部署 FE 高可用集群

本小节介绍如何配置部署 Frontend (FE) 节点。FE 是 StarRocks 的前端节点,负责管理元数据,管理客户端连接,进行查询规划,查询调度等工作。

新集群中的 FE 节点在启动时默认启用 IP 地址访问。

注意

  • FE 节点之间的时钟相差不能超过 5s。如果节点之间存在较大时钟差,请使用 NTP 协议校准时间。

  • 所有 FE 节点的 http_port 需保持相同,因此一台机器无法错开端口部署某个集群的多个 FE 节点。

  • 配置 FE 节点

  • 进入 StarRocks-x.x.x/fe 路径。

cd /opt/StarRocks-3.0.0-rc02/fe

修改 FE 配置文件 conf/fe.conf。以下示例仅添加元数据目录和 Java 目录,以保证部署成功。如需在生产环境中对集群进行详细优化配置,参考 FE 参数配置。

创建数据目录mkdir -p /data1/startrocks/metamkdir -p /data1/startrocks/logmkdir -p /data1/startrocks/log
FE参数配置cat /opt/StarRocks-3.0.0-rc02/fe/conf/fe.conf
LOG_DIR = /data1/startrocks/log
DATE = "$(date +%Y%m%d-%H%M%S)"
JAVA_HOME = /opt/jdk1.8.0_221/
JAVA_OPTS="-Dlog4j2.formatMsgNoLookups=true -Xmx8192m -XX:+UseMembar -XX:SurvivorRatio=8 -XX:MaxTenuringThreshold=7 -XX:+PrintGCDateStamps -XX:+PrintGCDetails -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSClassUnloadingEnabled -XX:-CMSParallelRemarkEnabled -XX:CMSInitiatingOccupancyFraction=80 -XX:SoftRefLRUPolicyMSPerMB=0 -Xloggc:${LOG_DIR}/fe.gc.log.$DATE -XX:+PrintConcurrentLocks"
JAVA_OPTS_FOR_JDK_9="-Dlog4j2.formatMsgNoLookups=true -Xmx8192m -XX:SurvivorRatio=8 -XX:MaxTenuringThreshold=7 -XX:+CMSClassUnloadingEnabled -XX:-CMSParallelRemarkEnabled -XX:CMSInitiatingOccupancyFraction=80 -XX:SoftRefLRUPolicyMSPerMB=0 -Xlog:gc*:${LOG_DIR}/fe.gc.log.$DATE:time"
sys_log_level = INFO
meta_dir = /data1/startrocks/meta
http_port = 8030
rpc_port = 9020
query_port = 9030
edit_log_port = 9010
riority_networks = 172.26.180.0/24
mysql_service_nio_enabled = true
log_roll_size_mb = 1024
sys_log_dir = /data1/startrocks/log
sys_log_roll_num = 10
sys_log_verbose_modules =
audit_log_dir = /data1/startrocks/log
audit_log_modules = slow_query, query
audit_log_roll_num = 10
meta_delay_toleration_second = 10
qe_max_connection = 1024
max_conn_per_user = 100
qe_query_timeout_second = 300
qe_slow_log_ms = 5000

注意

当一台机器拥有多个 IP 地址时,需要在 FE 配置文件 conf/fe.conf 中设置 priority_networks,为该节点设定唯一 IP。

启动 FE 节点

运行以下命令启动 FE 节点。

 /opt/StarRocks-3.0.0-rc02/fe/bin/start_fe.sh --daemon
  • 通过运行 jps 命令查看 Java 进程,确认 StarRocksFE 进程是否存在。

  • 通过在浏览器访问 FE ip:http_port(默认 http_port 为 8030),进入 StarRocks 的 WebUI,用户名为 root,密码为空。

  • 添加 FE 节点

  • 您可通过 MySQL 客户端连接 StarRocks 以添加 FE 节点。

  • 在 FE 进程启动后,使用 MySQL 客户端连接 FE 实例。

  • mysql -h 127.0.0.1 -P9030 -uroot
  • 说明

    root 为 StarRocks 默认内置 user,密码为空,端口为 fe/conf/fe.conf 中的 query_port 配置项,默认值为 9030

  • 查看 FE 状态。

  • SHOW PROC '/frontends'\G

  • 当 Role 为 LEADER 时,当前 FE 节点为选举出的主节点。

  • 当 Role 为 FOLLOWER 时,当前节点是一个能参与选主的 FE 节点。

如果 MySQL 客户端连接失败,可以通过查看 log/fe.warn.log 日志文件发现问题。

如果在初次部署时遇到任何意外问题,可以在删除并重新创建 FE 的元数据目录后,重新开始部署。

添加新 FE 节点

使用 MySQL 客户端连接已有 FE 节点,添加新 FE 节点的信息,包括角色、IP 地址、以及 Port。

  • 在FE LEADER节点 添加 Follower FE 节点。

语法:/opt/StarRocks-3.0.0-rc02/fe/bin/start_fe.sh  --helper host:port --daemon

Follower FE 节点执行:

/opt/StarRocks-3.0.0-rc02/fe/bin/start_fe.sh  --helper 172.26.180.1:9010 --daemon

参数:

  • host:机器的 IP 地址。如果机器存在多个 IP 地址,则该项为 priority_networks 设置项下设定的唯一通信 IP 地址。

  • portedit_log_port 设置项下设定的端口,默认为 9010

出于安全考虑,StarRocks 的 FE 节点和 BE 节点只会监听一个 IP 地址进行通信。如果一台机器有多块网卡,StarRocks 有可能无法自动找到正确的 IP 地址。例如,通过 ifconfig 命令查看到 eth0 IP 地址为 192.168.1.1docker0 IP 地址为 172.17.0.1,您可以设置 192.168.1.0/24 子网以指定使用 eth0 作为通信 IP。此处采用 CIDR 的表示方法来指定 IP 所在子网范围,以便在所有的 BE 及 FE 节点上使用相同的配置。

连接 FE 节点

FE 节点需两两之间建立通信连接方可实现复制协议选主,投票,日志提交和复制等功能。当新的FE节点首次被添加到已有集群并启动时,您需要指定集群中现有的一个节点作为 helper 节点,并从该节点获得集群的所有 FE 节点的配置信息,才能建立通信连接。因此,在首次启动新 FE 节点时候,您需要通过命令行指定 --helper 参数。

语法:/opt/StarRocks-3.0.0-rc02/fe/bin/start_fe.sh  --helper host:port --daemon

Follower FE 节点执行:

/opt/StarRocks-3.0.0-rc02/fe/bin/start_fe.sh  --helper 172.26.180.1:9010 --daemon

参数:

  • host:机器的IP 地址。如果机器存在多个 IP 地址,则该项为 priority_networks 设置项下设定的唯一通信 IP 地址。

  • portedit_log_port 设置项下设定的端口,默认为 9010

确认 FE 集群部署成功

查看集群状态,确认部署成功。

SHOW PROC '/frontends'\G

部署 BE 节点

本小节介绍如何配置部署 Backend (BE) 节点。BE 是 StarRocks 的后端节点,负责数据存储以及 SQL 执行等工作。

配置 BE 节点

进入 StarRocks-x.x.x/be 路径。

cd /opt/StarRocks-3.0.0-rc02/be/

修改 BE 节点配置文件 conf/be.conf

cat  /opt/StarRocks-3.0.0-rc02/be/conf/be.conf    
sys_log_level = INFO
be_port = 9060
be_http_port = 8040
heartbeat_service_port = 9050
brpc_port = 8060
jaeger_endpoint = localhost:6831
#priority_networks = 10.10.10.0/24;192.168.0.0/16
priority_networks = 172.26.180.0/24
#storage_root_path = /data1,medium:HDD;/data2,medium:SSD;/data3
storage_root_path = /data2/startrocks_be/storage
sys_log_dir = /data2/startrocks_be/log
sys_log_roll_mode = SIZE-MB-1024
sys_log_roll_num = 10
sys_log_verbose_modules = *
log_buffer_level = -1
JAVA_HOME = /opt/jdk1.8.0_221
JAVA_OPTS="-Djava.security.krb5.conf=/etc/krb5.conf"
JAVA_OPTS_FOR_JDK_9="-Djava.security.krb5.conf=/etc/krb5.conf"

注意

当一台机器拥有多个 IP 地址时,需要在 BE 配置文件 conf/be.conf 中设置 priority_networks,为该节点设定唯一 IP。

创建数据目录

mkdir -p /data2/startrocks_be/storagemkdir -p /data2/startrocks_be/log

添加 BE 节点

通过 MySQL 客户端连接FE节点将 BE 节点添加至 StarRocks 集群。

语法:mysql> ALTER SYSTEM decommission BACKEND "host:port";

MySQL [(none)]> ALTER SYSTEM ADD BACKEND "172.26.180.1:9050";
Query OK, 0 rows affected (0.02 sec)

MySQL [(none)]> ALTER SYSTEM ADD BACKEND "172.26.180.2:9050";
Query OK, 0 rows affected (0.01 sec)

MySQL [(none)]> ALTER SYSTEM ADD BACKEND "172.26.180.3:9050";
Query OK, 0 rows affected (0.00 sec)

注意

host 需要与 priority_networks 相匹配,port 需要与 be.conf 文件中的设置的 heartbeat_service_port 相同,默认为 9050

如添加过程出现错误,需要通过以下命令将该 BE 节点从集群移除。

语法:bin/start_be.sh --daemon

/opt/StarRocks-3.0.0-rc02/be/bin/start_be.sh --daemon

说明

host 和 port 与添加的 BE 节点一致。

启动 BE 节点

运行以下命令启动 BE 节点。

语法:bin/start_be.sh --daemon

/opt/StarRocks-3.0.0-rc02/be/bin/start_be.sh --daemon

确认 BE 启动成功

通过 MySQL 客户端确认 BE 节点是否启动成功。

SHOW PROC '/backends'\G

当 Alive 为 true 时,当前 BE 节点正常接入集群。

如果 BE 节点没有正常接入集群,可以通过查看 log/be.WARNING 日志文件排查问题。

如果日志中出现类似以下的信息,说明 priority_networks 的配置存在问题。

W0708 17:16:27.308156 11473 heartbeat_server.cpp:82\] backend ip saved in master does not equal to backend local ip127.0.0.1 vs. 172.16.xxx.xx

如遇到以上问题,可以通过 DROP 错误的 BE 节点,然后重新以正确的 IP 添加 BE 节点的方式来解决。

ALTER SYSTEM DROP BACKEND "172.16.xxx.xx:9050";

如果在初次部署时遇到任何意外问题,可以在删除并重新创建 BE 的数据路径后,重新开始部署。

环境数据测试:


MySQL [(none)]> CREATE DATABASE  chongzh;
Query OK, 0 rows affected (0.20 sec)

MySQL [(none)]> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| _statistics_       |
| chongzh            |
| information_schema |
+--------------------+
3 rows in set (0.03 sec)

MySQL [(none)]> use chongzh;
MySQL [chongzh]> CREATE TABLE IF NOT EXISTS `detailDemo` (
   `recruit_date`  DATE           NOT NULL COMMENT "YYYY-MM-DD",
   `region_num`    TINYINT        COMMENT "range [-128, 127]",
   `num_plate`     SMALLINT       COMMENT "range [-32768, 32767] ",
   `tel`           INT            COMMENT "range [-2147483648, 2147483647]",
   `id`            BIGINT         COMMENT "range [-2^63 + 1 ~ 2^63 - 1]",
   `password`      LARGEINT       COMMENT "range [-2^127 + 1 ~ 2^127 - 1]",
   `name`          CHAR(
20
)       NOT NULL COMMENT "range char(m),m in (1-255)",
   `profile`       VARCHAR(
500
)   NOT NULL COMMENT "upper limit value 1048576 bytes",
   `hobby`         STRING         NOT NULL COMMENT "upper limit value 65533 bytes",
   `leave_time`    DATETIME       COMMENT "YYYY-MM-DD HH:MM:SS",
   `channel`       FLOAT          COMMENT "4 bytes",
   `income`        DOUBLE         COMMENT "8 bytes",
   `account`       DECIMAL(
12
,
4
)  COMMENT "",
   `ispass`        BOOLEAN        COMMENT "true/false"
) ENGINE=OLAP
DUPLICATE KEY(`recruit_date`, `region_num`)
PARTITION BY RANGE(`recruit_date`)
(
   PARTITION p20220311 VALUES [('2022-03-11'), ('2022-03-12')),
   PARTITION p20220312 VALUES [('2022-03-12'), ('2022-03-13')),
   PARTITION p20220313 VALUES [('2022-03-13'), ('2022-03-14')),
   PARTITION p20220314 VALUES [('2022-03-14'), ('2022-03-15')),
   PARTITION p20220315 VALUES [('2022-03-15'), ('2022-03-16'))
)
DISTRIBUTED BY HASH(`recruit_date`, `region_num`) BUCKETS
8

PROPERTIES (
   "replication_num" = "1"
);
[root@HDDC-DFNV-L3-Nredis01 ~]# cat detailDemo_data
2022-03-13,1,1212,1231231231,123412341234,123452342342343324,hello,welcome,starrocks,2022-03-15 12:21:32,123.04,21.12345,123456.123456,true
2022-03-14,2,1212,1231231231,123412341234,123452342342343324,hello,welcome,starrocks,2022-03-15 12:21:32,123.04,21.12345,123456.123456,false

[root@HDDC-DFNV-L3-Nredis01 ~]# curl --location-trusted -u root: -T /root/detailDemo_data -H "label: streamDemo" \
> -H "column_separator:," \
> http://127.0.0.1:8030/api/chongzh/detailDemo/_stream_load
{
   "TxnId": 2,
   "Label": "streamDemo",
   "Status": "Success",
   "Message": "OK",
   "NumberTotalRows": 2,
   "NumberLoadedRows": 2,
   "NumberFilteredRows": 0,
   "NumberUnselectedRows": 0,
   "LoadBytes": 281,
   "LoadTimeMs": 508,
   "BeginTxnTimeMs": 73,
   "StreamLoadPlanTimeMs": 190,
   "ReadDataTimeMs": 0,
   "WriteDataTimeMs": 119,
   "CommitAndPublishTimeMs": 119
   
   MySQL [chongzh]> select * from detailDemo;
+--------------+------------+-----------+------------+--------------+--------------------+-------+---------+-----------+---------------------+---------+----------+-------------+--------+
| recruit_date | region_num | num_plate | tel        | id           | password           | name  | profile | hobby     | leave_time          | channel | income   | account     | ispass |
+--------------+------------+-----------+------------+--------------+--------------------+-------+---------+-----------+---------------------+---------+----------+-------------+--------+
| 2022-03-13   |          1 |      1212 | 1231231231 | 123412341234 | 123452342342343324 | hello | welcome | starrocks | 2022-03-15 12:21:32 |  123.04 | 21.12345 | 123456.1235 |      1 |
| 2022-03-14   |          2 |      1212 | 1231231231 | 123412341234 | 123452342342343324 | hello | welcome | starrocks | 2022-03-15 12:21:32 |  123.04 | 21.12345 | 123456.1235 |      0 |
+--------------+------------+-----------+------------+--------------+--------------------+-------+---------+-----------+---------------------+---------+----------+-------------+--------+
2 rows in set (0.33 sec)

参考: https://docs.starrocks.io/zh-cn/3.0/quick_start/Deploy

StarRocks 3.0 集群安装手册的更多相关文章

  1. hadoop 2.2.0集群安装详细步骤(简单配置,无HA)

    安装环境操作系统:CentOS 6.5 i586(32位)java环境:JDK 1.7.0.51hadoop版本:社区版本2.2.0,hadoop-2.2.0.tar.gz 安装准备设置集群的host ...

  2. CentOS下Hadoop-2.2.0集群安装配置

    对于一个刚开始学习Spark的人来说,当然首先需要把环境搭建好,再跑几个例子,目前比较流行的部署是Spark On Yarn,作为新手,我觉得有必要走一遍Hadoop的集群安装配置,而不仅仅停留在本地 ...

  3. hadoop 2.2.0集群安装

    相关阅读: hbase 0.98.1集群安装 本文将基于hadoop 2.2.0解说其在linux集群上的安装方法,并对一些重要的设置项进行解释,本文原文链接:http://blog.csdn.net ...

  4. ElasticSearch 5.0.0 集群安装部署文档

    1.  搭建环境 3台物理机 操作系统 centos7 es1   192.168.31.141   4g内存   2核 es2   192.168.31.142   4g内存   2核 es3    ...

  5. CentOS下Storm 1.0.0集群安装具体解释

    本文环境例如以下: 操作系统:CentOS 6 32位 ZooKeeper版本号:3.4.8 Storm版本号:1.0.0 JDK版本号:1.8.0_77 32位 python版本号:2.6.6 集群 ...

  6. Linux基于Hadoop2.8.0集群安装配置Hive2.1.1及基础操作

    前言 安装Apache Hive前提是要先安装hadoop集群,并且hive只需要在hadoop的namenode节点集群里安装即可,安装前需保证Hadoop已启(动文中用到了hadoop的hdfs命 ...

  7. Greenplum(4.3.73)集群安装手册

    1. 概述 本文档仅限于指导Greenplum 4.3.7.3(对应安装包greenplum-db-4.3.7.3-build-2-RHEL5-x86_64.bin)版本在CentOS6.5 系统进行 ...

  8. redis3.0.0 集群安装详细步骤

    Redis集群部署文档(centos6系统) Redis集群部署文档(centos6系统) (要让集群正常工作至少需要3个主节点,在这里我们要创建6个redis节点,其中三个为主节点,三个为从节点,对 ...

  9. hadoop2.20.0集群安装教程

    一.安装的需要软件及集群描述 1.软件: Vmware9.0:虚拟机 Hadoop2.2.0:Apache官网原版稳定版本 JDK1.7.0_07:Oracle官网版本 Ubuntu12.04LTS: ...

  10. 最新版spark1.1.0集群安装配置

    和分布式文件系统和NoSQL数据库相比而言,spark集群的安装配置还算是比较简单的: 很多教程提到要安装java和scala,但我发现spark最新版本是包含scala的,JRE采用linux内嵌的 ...

随机推荐

  1. sql server clr json to table

    背景 SQL SERVER 2016 之前版本不支持 直接解析json 步骤: 1 vs 数据库项目 2 生成dll 3 加入信任 DECLARE @hash AS BINARY(64) = (SEL ...

  2. 狂神的学习笔记demo0607

    Ctrl+D 复制此行到下一行 sout   快捷打出System.out.println(); 修饰符 static 静态的 finalf 常量 变量的命名规范 见名知意 类成员变量:首字母小写和驼 ...

  3. cmake使用boost静态库,错误提示 Could NOT find Boost (missing: Boost_INCLUDE_DIR) (Required is at least version "1.48")

    使用的是Cmake-gui 编译. 问题出在C盘路径下找不到 Boost ,是否需要把boost的路径添加到系统Path 中? 任然不能解决. 更改源码: 找到下面这几行代码(你可以搜索) messa ...

  4. PTA·电信计费系列问题总结

    一.题目涉及的知识点 1.容器的使用 2.抛出异常 3.抽象类 4.继承与多态 5.正则表达式 二.题目分析总结 1.题目集08:7-1 电信计费系列1-座机计费 实现一个简单的电信计费程序:假设南昌 ...

  5. 用echarts做兼容ie8的三测单(体温单) 代码全

    $.fn.extend({ /** * * @param { * UrineOutputData: 尿量数据 * OutputData: 出量数据 * InputData: 入量数据 * shitDa ...

  6. linux离线安装插件包

    1.下载插件包(联网的linux环境下) # 检查是否安装了vim(vim-minimal是vi) [root@localhost opt]# rpm -qa | grep vim vim-minim ...

  7. 关于Windows10纯净启动的相关修改流程

    关于纯净启动的相关流程 自动登录 打开命令提示符运行control userpasswords2后回车 在弹出的用户账户窗口中,取消勾选"要使用本计算机,用户必须输入用户名和密码" ...

  8. vue项目怎么链接开发服务器

    在前后端分离的前提下,完成前端的页面开发,就可以开始链接开发服务器 安装axios到项目中 npm install axios --save 安装完成后问你的后端开发人员要IP 后端会给一个IP以及端 ...

  9. DRF_基本使用

    基本使用 视图内 from rest_framework.viewsets import ModelViewSet from app01 import models from app01 import ...

  10. Shell脚本之while read line的用法

    Shell脚本之while read line的用法 while read line do - done < file read通过输入重定向,把file的第一行所有的内容赋值给变量line,循 ...