hadoop完全分布式一键安装、启动、停止脚本

2023-11-04

 hadoop完全分布式一键安装脚本

#!/bin/bash
#配置HADOOP的安装目录 修改的地方1 脚本可以自己创建
##在windows编写的代码可能运行有问题执行以下 1>vim redisshell.sh  2>:set ff=unix

echo -e "请输入hadoop的安装目录,不存在脚本自动创建,最后一个/不要写 /bigdata/install"
read esinstallpath

#创建HADOOP安装的目录
if [ ! -d $esinstallpath ]; then
   mkdir -p $esinstallpath
fi 
if [ ! -d $esinstallpath ]; then
  echo "创建目录$esinstallpat失败!请检查目录是否有权限"
  exit
fi

#解压tar包
currentdir=$(cd $(dirname $0); pwd)
ls | grep 'hadoop-.*[gz]$'
if [ $? -ne 0 ]; then
   #当前目录没有hadoop的压缩包
   echo "在$currentdir下没有发现hadoop-*.tar.gz,请自行上传!"
   exit
else
   #解压
   tar -zxvf $currentdir/$(ls | grep 'hadoop-.*[gz]$') -C $esinstallpath
fi

esbanben=`ls $esinstallpath| grep 'hadoop-.*'`

#PATH设置
#末行插入
echo "">>~/.bash_profile
echo '#HADOOP'>>~/.bash_profile
echo "export HADOOP_HOME=$esinstallpath/$esbanben">>~/.bash_profile
echo 'export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin'>>~/.bash_profile
source ~/.bash_profile

hadooppath=$esinstallpath/$esbanben
confpath=$esinstallpath/$esbanben/etc/hadoop

javahome=`echo $JAVA_HOME`
bak_dir='export JAVA_HOME=${JAVA_HOME}'
new_dir='export JAVA_HOME='$javahome
sed -i "s!${bak_dir}!${new_dir}!g" $confpath/hadoop-env.sh


#修改core-site.xml
echo -e "请输入hadoop集群服务器名称 例如 mycluster"
read mycluster
sed -i '/<\/configuration>/i\<!--配置hadoop集群服务器名称 -->' $confpath/core-site.xml
sed -i '/<\/configuration>/i\<property>' $confpath/core-site.xml
sed -i '/<\/configuration>/i\  <name>fs.defaultFS</name>' $confpath/core-site.xml
sed -i "/<\/configuration>/i\  <value>hdfs://$mycluster</value>" $confpath/core-site.xml
sed -i "/<\/configuration>/i\</property>" $confpath/core-site.xml

echo -e "请输入hadoop运行时产生文件的存储目录 不需要自己创建目录 集群自己会创建 指定一个空间大的 用来保存hadoop数据 例如 /bigdata/hadoop"
read hadooptmpdir
sed -i '/<\/configuration>/i\<!--hadoop运行时产生文件的存储目录 -->' $confpath/core-site.xml
sed -i '/<\/configuration>/i\<property>' $confpath/core-site.xml
sed -i '/<\/configuration>/i\  <name>hadoop.tmp.dir</name>' $confpath/core-site.xml
sed -i "/<\/configuration>/i\  <value>$hadooptmpdir</value>" $confpath/core-site.xml
sed -i "/<\/configuration>/i\</property>" $confpath/core-site.xml

echo -e "请输入zk集群 例如 cdh01:2181,cdh02:2181,cdh03:2181"
read zkhosts
sed -i '/<\/configuration>/i\<!--配置zookeeper集群,容灾 -->' $confpath/core-site.xml
sed -i '/<\/configuration>/i\<property>' $confpath/core-site.xml
sed -i '/<\/configuration>/i\  <name>ha.zookeeper.quorum</name>' $confpath/core-site.xml
sed -i "/<\/configuration>/i\  <value>$zkhosts</value>" $confpath/core-site.xml
sed -i "/<\/configuration>/i\</property>" $confpath/core-site.xml

echo "core-site.xml 配置如下"

cat $confpath/core-site.xml

echo "core-site.xml 配置完成"
sleep 1
#开始配置hdfs-site.xml
sed -i '/<\/configuration>/i\<!-- 集群服务名称  -->' $confpath/hdfs-site.xml
sed -i '/<\/configuration>/i\<property>' $confpath/hdfs-site.xml
sed -i '/<\/configuration>/i\  <name>dfs.nameservices</name>' $confpath/hdfs-site.xml
sed -i "/<\/configuration>/i\  <value>$mycluster</value>" $confpath/hdfs-site.xml
sed -i "/<\/configuration>/i\</property>" $confpath/hdfs-site.xml

sed -i '/<\/configuration>/i\<!-- 名称节点配置  -->' $confpath/hdfs-site.xml
sed -i '/<\/configuration>/i\<property>' $confpath/hdfs-site.xml
sed -i "/<\/configuration>/i\  <name>dfs.ha.namenodes.$mycluster</name>" $confpath/hdfs-site.xml
sed -i "/<\/configuration>/i\  <value>nn1,nn2</value>" $confpath/hdfs-site.xml
sed -i "/<\/configuration>/i\</property>" $confpath/hdfs-site.xml


echo  "请输入两个nameNode的地址,按照空格分开 例如 cdh01 cdh02" 
read nameNodes
array=(`echo $nameNodes | tr ' ' ' '` )

for i  in `seq 0 $((${#array[@]}-1))`
do
 sed -i "/<\/configuration>/i\<!-- 指定nn$((${i}+1))机器的RPC服务完整监听地址  -->" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\<property>" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\  <name>dfs.namenode.rpc-address.$mycluster.nn$((${i}+1))</name>" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\  <value>${array[${i}]}:8020</value>" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\</property>" $confpath/hdfs-site.xml
 
 sed -i "/<\/configuration>/i\<!-- 指定nn$((${i}+1))机器的http服务地址  -->" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\<property>" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\  <name>dfs.namenode.http-address.$mycluster.nn$((${i}+1))</name>" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\  <value>${array[${i}]}:50070</value>" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\</property>" $confpath/hdfs-site.xml
 
 #配置yarn的环境
 sed -i "/<\/configuration>/i\<property>" $confpath/yarn-site.xml
 sed -i "/<\/configuration>/i\  <name>yarn.resourcemanager.hostname.rm$((${i}+1))</name>" $confpath/yarn-site.xml
 sed -i "/<\/configuration>/i\  <value>${array[${i}]}</value>" $confpath/yarn-site.xml
 sed -i "/<\/configuration>/i\</property>" $confpath/yarn-site.xml
 
 sed -i "/<\/configuration>/i\<property>" $confpath/yarn-site.xml
 sed -i "/<\/configuration>/i\  <name>yarn.resourcemanager.webapp.address.rm$((${i}+1))</name>" $confpath/yarn-site.xml
 sed -i "/<\/configuration>/i\  <value>${array[${i}]}:8088</value>" $confpath/yarn-site.xml
 sed -i "/<\/configuration>/i\</property>" $confpath/yarn-site.xml
 
 
done

echo  "指定journalnode的配置,所有机器 例如 cdh01:8485;cdh02:8485;cdh03:8485;cdh04:8485;cdh05:8485" 
read journalnode
 sed -i "/<\/configuration>/i\<!-- 指定journalnode  -->" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\<property>" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\  <name>dfs.namenode.shared.edits.dir</name>" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\  <value>qjournal://$journalnode/$mycluster</value>" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\</property>" $confpath/hdfs-site.xml
 
 
 sed -i "/<\/configuration>/i\<!--   -->" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\<property>" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\  <name>dfs.client.failover.proxy.provider.$mycluster</name>" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\  <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\</property>" $confpath/hdfs-site.xml
 
 
 
 sed -i "/<\/configuration>/i\<!--  在故障切换期间将用于隔离Active NameNode的脚本 -->" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\<property>" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\  <name>dfs.ha.fencing.methods</name>" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\  <value>" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\  sshfence" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\  shell(/bin/true)" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\  </value>" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\</property>" $confpath/hdfs-site.xml
 
 sed -i "/<\/configuration>/i\<!-- 免密  -->" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\<property>" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\  <name>dfs.ha.fencing.ssh.private-key-files</name>" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\  <value>/home/.ssh/id_rsa</value>" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\</property>" $confpath/hdfs-site.xml
 
 
 sed -i "/<\/configuration>/i\<!-- Journal Node文件存储地址 -->" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\<property>" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\  <name>dfs.journalnode.edits.dir</name>" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\  <value>$hadooptmpdir/journal</value>" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\</property>" $confpath/hdfs-site.xml
 
 sed -i "/<\/configuration>/i\<!--是否开启自动failover机制-->" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\<property>" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\  <name>dfs.ha.automatic-failover.enabled</name>" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\  <value>true</value>" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\</property>" $confpath/hdfs-site.xml
 
 sed -i "/<\/configuration>/i\<!--HDFS文件系统每个block冗余备份数-->" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\<property>" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\  <name>dfs.replication</name>" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\  <value>3</value>" $confpath/hdfs-site.xml
 sed -i "/<\/configuration>/i\</property>" $confpath/hdfs-site.xml
 
 
echo "hdfs-site.xml 配置如下"
cat $confpath/hdfs-site.xml
echo "hdfs-site.xml 配置完成"
sleep 1

#开始配置mapred-site.xml
#mapred-site.xml
cp $confpath/mapred-site.xml.template $confpath/mapred-site.xml
 sed -i "/<\/configuration>/i\<!--HDFS文件系统每个block冗余备份数-->" $confpath/mapred-site.xml
 sed -i "/<\/configuration>/i\<property>" $confpath/mapred-site.xml
 sed -i "/<\/configuration>/i\  <name>mapreduce.framework.name</name>" $confpath/mapred-site.xml
 sed -i "/<\/configuration>/i\  <value>yarn</value>" $confpath/mapred-site.xml
 sed -i "/<\/configuration>/i\</property>" $confpath/mapred-site.xml

echo "mapred-site.xml 配置如下"
cat $confpath/mapred-site.xml
echo "mapred-site.xml 配置完成"
sleep 1


#开始配置yarn-site.xml
 sed -i "/<\/configuration>/i\<property>" $confpath/yarn-site.xml
 sed -i "/<\/configuration>/i\  <name>yarn.nodemanager.aux-services</name>" $confpath/yarn-site.xml
 sed -i "/<\/configuration>/i\  <value>mapreduce_shuffle</value>" $confpath/yarn-site.xml
 sed -i "/<\/configuration>/i\</property>" $confpath/yarn-site.xml
 
 sed -i "/<\/configuration>/i\<property>" $confpath/yarn-site.xml
 sed -i "/<\/configuration>/i\  <name>yarn.resourcemanager.ha.enabled</name>" $confpath/yarn-site.xml
 sed -i "/<\/configuration>/i\  <value>true</value>" $confpath/yarn-site.xml
 sed -i "/<\/configuration>/i\</property>" $confpath/yarn-site.xml
 
 sed -i "/<\/configuration>/i\<property>" $confpath/yarn-site.xml
 sed -i "/<\/configuration>/i\  <name>yarn.resourcemanager.ha.rm-ids</name>" $confpath/yarn-site.xml
 sed -i "/<\/configuration>/i\  <value>rm1,rm2</value>" $confpath/yarn-site.xml
 sed -i "/<\/configuration>/i\</property>" $confpath/yarn-site.xml
 
 
 sed -i "/<\/configuration>/i\<property>" $confpath/yarn-site.xml
 sed -i "/<\/configuration>/i\  <name>yarn.resourcemanager.zk-address</name>" $confpath/yarn-site.xml
 sed -i "/<\/configuration>/i\  <value>$zkhosts</value>" $confpath/yarn-site.xml
 sed -i "/<\/configuration>/i\</property>" $confpath/yarn-site.xml
 
 sed -i "/<\/configuration>/i\<property>" $confpath/yarn-site.xml
 sed -i "/<\/configuration>/i\  <name>yarn.resourcemanager.cluster-id</name>" $confpath/yarn-site.xml
 sed -i "/<\/configuration>/i\  <value>mycluster1</value>" $confpath/yarn-site.xml
 sed -i "/<\/configuration>/i\</property>" $confpath/yarn-site.xml

echo "yarn-site.xml 配置如下"
cat $confpath/yarn-site.xml
echo "yarn-site.xml 配置完成"
sleep 1
 
 #开始配置slaves
 
echo  "请输入所有的datanode,按照空格分开 例如 cdh01 cdh02 cdh03" 
read datanodes
array=(`echo $datanodes | tr ' ' ' '` )
touch  $confpath/slaves
for datanode in ${array[@]}
do
 echo $datanode >>  $confpath/slaves
done
 
echo "slaves 配置如下"
cat $confpath/slaves
echo "slaves 配置完成"
sleep 1

#分发hadoop安装文件
echo "以下输入的节点必须做免密登录"
echo  "请输入所有的hadoop节点,按照空格分开,当前机器不用输入(当前机器是cdh01) 例如 cdh02 cdh03 cdh04 cdh05" 
read allnodes
user=`whoami`
array=(`echo $allnodes | tr ' ' ' '` )
for allnode in ${array[@]}
do
 echo ======= $allnode  =======
 ssh $allnode "echo ''>>~/.bash_profile"
 ssh $allnode "echo '#HADOOP'>>~/.bash_profile"
 ssh $allnode "echo 'export HADOOP_HOME=$hadooppath'>>~/.bash_profile"
 ssh $allnode 'echo "export PATH=\$PATH:\$HADOOP_HOME/bin:\$HADOOP_HOME/sbin">>~/.bash_profile'
 ssh $allnode "source ~/.bash_profile"
 ssh $allnode "rm -rf $hadooppath"
 ssh $allnode "mkdir -p $hadooppath"
 scp -r $hadooppath/* ${user}@$allnode:$hadooppath/
 echo ======= $allnode 复制完成  =======
done

for allnode in ${array[@]}
do
 echo ======= 在 $allnode 手动执行 source ~/.bash_profile 在通过 hadoop version 查看是否安装成功 =======
done

 

hadoop完全分布式一键启动脚本

#!/bin/bash
#启动所有的hadoop
slaveNode='cdh02'
source ~/.bash_profile
start-all.sh
sleep 2
#启动另一台机器的resourcemanager
ssh -T $slaveNode <<EOF
    source ~/.bash_profile
    yarn-daemon.sh start resourcemanager
EOF
echo  $slaveNode 启动resourcemanager...[ done ]

 

hadoop完全分布式一键停止脚本

#!/bin/bash
#停止hadoop
standbyNode='cdh02'
source ~/.bash_profile
stop-all.sh
ssh -T $standbyNode <<EOF
    source ~/.bash_profile
    yarn-daemon.sh stop resourcemanager
EOF
echo  $standbyNode 停止resourcemanager...[ done ]

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

hadoop完全分布式一键安装、启动、停止脚本 的相关文章

  • QCC300x笔记(6) -- QCC3007的OTA流程梳理

    哈喽大家好 这是该系列博文的第六篇 篇 lt lt 系列博文索引 快速通道 gt gt 写在前面 QCC300x支持OTA功能 官方提供了详细的文档说明 按照文档即可升级成功 下面是对流程的简单梳理 可参考 文档和APP下载 1 生产APP
  • C语言解析FLM(ELF)格式文件

    C语言解析FLM ELF 格式文件 代码下载 https gitee com jhembedded flmparse 1 前言 写这篇博客的目的是因为最近在做一个STM32的离线编程器 离线下载需要用到FLM文件的下载算法 所以实现了一下提
  • [人工智能-深度学习-28]:卷积神经网络CNN - 网络架构与描述方法

    作者主页 文火冰糖的硅基工坊 文火冰糖 王文兵 的博客 文火冰糖的硅基工坊 CSDN博客 本文网址 https blog csdn net HiWangWenBing article details 120806599 目录 第1章 卷积神
  • Spring Boot Event Bus用法

    Spring Boot Event Bus是Spring框架中事件驱动编程的一部分 它为应用程序中的不同组件提供了一种解耦的方式 以便它们可以相互通信和交互 以下是Spring Boot Event Bus的用法 导入依赖 首先 您需要在项
  • 如何编写脚本对项目代码进行分析(测试篇)

    本篇将从一个测试的角度 对于在开发过程中 如何对代码进行完善的测试 包括功能以及性能的测试 内容属于杂谈 可能不够严谨 但希望能帮到看到这篇文章的各位 前言 我想没有人会质疑测试的重要性 我们自己编写的代码 可能需要经过很多次的测试才能上线
  • Java 数据库介绍

    数据库基础 数据库概念 数据库 Database 是按照数据结构来组织 存储和管理数据的仓库 它是存储数据集合的容器 可以看做一个文件夹 里面存放着一系列有关联的数据表 数据表 Table 是一种结构化的数据 以列和行为单位来存储的一种结构
  • 基于TCP协议的select多路复用IO服务器编程

    一 初识TCP协议 TCP协议是面向链接 可靠的 基于字节流传输层协议 使用严格的应答机制来保证可靠性 1 建立连接时进行三次握手 2 断开连接时进行四次挥手 3 每次发送数据后 都必须要应答 4 会给每个数据包编号 应答时区分编号 TCP
  • Visual Studio 跨平台开发实战(5) - Xamarin Android 多页面应用程式开发

    前言 大部份的Android 都具有实体或虚拟的Back鍵 因此在处理多页面应用程式时 与先前所介绍的iOS Navigation controller 比较起来会简单许多 1 开启Visual Studio 并新增Android Appl
  • Python爬虫到底要学到什么程度才能接单赚钱呢

    Python爬虫可以做副业接单 一些个人或者企业想要爬一些资料数据之类的 可以给他们爬 费用几百上千不等 这又可以增加个人的收入来源 Python爬虫学到什么程度可以接单 你得要熟练使用Python爬虫 那么一些Python基础知识肯定需要
  • OpenGL计算着色器实现光线追踪——以球体跟踪为例

    OpenGL计算着色器实现光线追踪 以球体跟踪为例 光线追踪是渲染领域中的一种技术 通过在场景中发射光线并迭代计算来确定每个像素的颜色值 这种技术可以用于生成真实感和高度逼真的渲染图像 而在OpenGL中 我们可以利用计算着色器实现光线追踪
  • Qt应用开发(基础篇)——工具按钮类 QToolButton

    一 前言 QToolButton类继承于QAbstractButton 该部件为命令或选项提供了一个快速访问按钮 通常用于QToolBar中 按钮基类 QAbstractButton QToolButton是一个特殊的按钮 一般显示文本 只
  • 机器学习中的高斯分布

    文章目录 一 高斯分布的概率密度函数 二 一元高斯分布的极大似然估计 2 1 M L E
  • box2d 服务器性能,Box2d三种施加力的方法

    package import Box2D Collision Shapes b2PolygonShape import Box2D Common Math b2Vec2 import Box2D Dynamics Joints b2Revo
  • 2023中国新型灵活就业报告

    导读 9月12日 暨南大学经济与社会研究院和智联招聘联合发布 2023中国新型灵活就业报告 据了解 本报告中新型灵活就业职位具体包括八类工种 平台电商 生活配送 生活服务 平台微商 知识服务 自媒体 平台直播 共享出行司机 八类工种中生活配
  • 测试边界值(上点、内点、离点)

    测试边界值 上点 内点 离点 上点 就是指得边界上得点 开区间的话 上点就是在域外 闭区间得话 上点就是在域内 离点 指得就是离上点最近得点 如果是开区间 那么离点就在域内 如果是闭区间 那么离点就在域外 内点 域内得任意点都是内点 实例
  • scala学习系列(四) Scala关键字(持续更新)

    Scala有39个关键字 package import class object 伴生对象关键字 trait extends with type for private protected abstract sealed final imp
  • [Unity]环形进度条(Progress)/拖拽条(Slider)制作

    先上效果图 上图演示效果可用于圆形进度条的加载 或者用于拖拽验证码的实现 原理相同 以下所有算法获得的坐标均是在fillorign为top时的公式 拖拽物体的位置 通过点击拖拽获取当前Rect下本地坐标 然后将这个坐标进行标准化 norma
  • C++一行输入多个整数,每个整数用空格隔开,回车结束输入

    C 一行输入多个整数 每个整数用空格隔开 回车结束输入 include
  • 求生之路2社区服务器sourcemod安装配置搭建教程centos

    求生之路2社区服务器sourcemod安装配置搭建教程centos 大家好我是艾西 通过上文我们已经成功搭建了求生之路2的服务端 但是这个服务端是纯净的服务端 就是那种最纯粹的原版 如果想要实现插件 sm开头的命令等功能 需要安装这个sou
  • QZXing识别二维码

    下载QZXing这个识别二维码库 在github上下载qzxing https github com zxing zxing中的QZXing 新建qt工程 在pro文件中加入include QZXing sourceV2 4 QZXing

随机推荐

  • C++ 命名返回值优化(NRVO)

    命名的返回值优化 NRVO 这优化了冗余拷贝构造函数和析构函数调用 从而提高了总体性能 值得注意的是 这可能导致优化和非优化程序之间的不同行为 下面是代码段1中的一个简单示例 以说明优化及其实现方式 A MyMethod B var A r
  • 自动化运维:Ansible之playbook基于ROLES部署LNMP平台

    目录 一 理论 1 playbook剧本 2 ROLES角色 3 关系 4 Roles模块搭建LNMP架构 二 实验 1 Roles模块搭建LNMP架构 三 问题 1 剧本启动php报错语法问题 2 剧本启动mysql报错语法问题 3 剧本
  • Python编程:从入门到实践关于pi,百万位圆周率,pi_million_digits.txt,分享给大家

    blog github hexo的blog链接 github 我的github传送 CSDN 我的CSDN博客 学习python中需要一个百万圆周率的txt文件 但是按书上的链接又打不开 百度找了很久才找到 分享一下 以下是前500位 3
  • Sqlserver内存管理:限制最大占用内存

    一 Sqlserver对系统内存的管理原则是 按需分配 且贪婪 用完不还 它不会自动释放内存 因此执行结果集大的sql语句时 数据取出后 会一直占用内存 直到占满机器内存 并不会撑满 还是有个最大限制 比机器内存稍小 在重启服务前 sqls
  • 获取使用system权限

    win7 win8 获取system权限 win7的服务 注册表 文件夹等一些东西 即便你是administrator也没法修改 真郁闷 那就用system权限吧 以下方法是让一个程序以system权限运行 而不是类似在右键修改权限获取文件
  • 【Unity Shader】纹理实践2.0:基本属性&封装和滤波模式

    关于理论知识 技术美术图形部分 纹理基础1 0 纹理管线 flashinggg的博客 CSDN博客 上篇是总结了纹理映射一整个的流程 其中2 3纹理采样中提到了需要进行两块设置 设置封装模式 Wrap Mode 介绍了封装模式都有哪些 设置
  • [NC] 仓鼠与珂朵莉-分块

    给定一个长度为n的序列 m个询问 每次给出一个区间 查找区间内x cnt x 的最大值 由于题目的限制 下一次询问的区间会受到上一次查询结果的影响 所以必须要进行强制在线处理 首先将数列分成ceil n blk 1 块 对于询问中b l 1
  • android 11.0 开机动画横屏显示

    目录 1 概述 2 开机动画横屏显示的核心代码部分 3 开机动画横屏显示的核心代码部分分析以及实现功能
  • 计算机考研复试常问问题 数据结构篇

    第一章 绪论 1 时间复杂度 时间复杂度 算法执行时所需要的计算工作量 与整个算法的执行时间和基本操作重复的次数成正比 一个语句的频度是指该语句在算法中被重复执行的次数 算法中所有语句的频度之和记为T n O T n 的数量级 数量级 数量
  • Java 多线程事务回滚 ——多线程插入数据库时事务控制

    背景 日常项目中 经常会出现一个场景 同时批量插入数据库数据 由于逻辑复杂或者其它原因 我们无法使用sql进行批量插入 串行效率低 耗时长 为了提高效率 这个时候我们首先想到多线程并发插入 但是如何控制事务呢 直接上干货 实现效果 开启多条
  • 美图秀秀自动化测试工程师笔试面试

    2014年5月5日 笔试 一 选择题 1 有n个文件 进行快速排序 辅助存储空间为 A O 1 B O N C O Nlog2N D O N 2 2 给出一个两层for循环分别循环n次和m次 问时间复杂度 A O m n 3 很多都是关于j
  • SystemUI详解

    目录 一 简介 二 SystemUI的架构 三 SystemUI的主要组件 四 SystemUI的主要功能 五 SystemUI的自定义和定制 六 SystemUI的性能优化 一 简介 SystemUI是Android操作系统的一个关键组件
  • C语言枚举类型的大小

    主流编译器如 gcc vc MinGW gcc等枚举变量均为4字节 少量编译器会根据枚举个数做优化 如只有3个枚举值时 size可能为1 enum长度不确定会带来可移植性问题 如果第三方库API接口使用enum类型 编译和调用库时一旦有关e
  • c++读取TXT文件内容

    c 读取TXT文件内容 首先添加头文件 include
  • Cron expression must consist of 6 fields

    corn 表达式为 Scheduled cron 20 2021 运行代码提示报错 Cron 表达式必须包含 6 个字段 Cron expression must consist of 6 fields found 7 in 20 2021
  • 光盘装系统和U盘装系统有什么区别?哪个好?

    光盘装系统和U盘装系统的区别 U盘 U盘安装就是利用U盘启动盘制作工具 制作U盘启动盘 之后从U盘启动WIN PE 系统 再加载下载好的系统镜像进行安装的方法 光盘 光盘安装法就是利用购买好的系统盘 或者自己制作的系统盘 利用电脑的光驱 直
  • Uni-app登录态管理(vuex)

    转载 https www cnblogs com edward life p 11181139 html 应用中 保持登录状态是常见需求 本文讲解使用uni app框架时如何保持用户登录状态 即 初次进入应用为未登录状态 gt 登录 gt
  • html提交表单 node,Nodejs之http的表单提交

    之前介绍了http模块的请求与响应的过程 也介绍了TCP协议的客户端与服务端的数据传输 http协议是TCP上层协议 这里创建了一个简单的web服务器 并对提交表单数据进行处理 根据了不起的Node js一书总结 POST方法提交表单数据
  • centso7 openssl 报错Verify return code: 20 (unable to get local issuer certificate)

    问题重现 由于centos7 默认的openssl的版本为1 1 0k 本人编译媒体服务时 需要openssl版本1 1 1以上 所有删除的之前的低版本openssl 手动编译了一个1 1 1k的版本 媒体服务正常运行 并且CA验证正常 结
  • hadoop完全分布式一键安装、启动、停止脚本

    hadoop完全分布式一键安装脚本 bin bash 配置HADOOP的安装目录 修改的地方1 脚本可以自己创建 在windows编写的代码可能运行有问题执行以下 1 gt vim redisshell sh 2 gt set ff uni