精华内容
下载资源
问答
  • 点击“Python数据分析与人工智能科技”右角选择设置“星标公众号”本文章可“开白”转载文章末尾左下角点击“可阅览我的博客网页Hexo快速搭建个人博客(2019/10/22更新)使用的工具(本教程统一在Windows系统下搭建...

    点击Python数据分析与人工智能科技

    右上角选择设置“星标公众号”

    本文章可“开白”转载

    文章末尾左下角点击可阅览我的博客网页

    39153ca6986a5beffd3d2919563aac78.gif

    Hexo快速搭建个人博客(2019/10/22更新)


    使用到的工具(本教程统一在Windows系统下搭建)

    Node.js、Hexo、Git、Github账号、Sublime Text3

    请自行注册一个Github账号

    最后的部署到网上的博客展示

    1de779c3a25acfcb11dabce22ecb5bbc.png

    文章目录:

    前言

    值得你知道的话

    一、从创建到部署博客

    二、博客的网页主题

    三、更换域名+博客测试成功

    前言

    今天一直在钻研这个博客,并搜索了大量有关hexo搭建博客的教程进行学习。我作为一个第一次使用Hexo搭建个人博客的菜鸟,我发现我踩了不少坑,哈哈,在这里我不得不吐槽一下某些撰写Hexo搭建个人博客的技术人员,用一个字来形容他们的博客就是“乱”,乱是因为我读完他们的博客写的内容发现逻辑顺序简直看得我一头雾水、细节内容对于他们来说就是一个摆设,难怪有好多人看不懂也是应该的。当然,可能是我的水平不够,也或许是在拜读他们的大作时候不够认真和严谨。

    但我还是要告诫一下一些技术编辑者:

    如果是怕别人偷学你的内容,那就不要发在网上;如果你发在网上,请考虑我们读者的感受,要对自己花费那么多时间撰写的内容负责,要让别人看懂你的文章,让别人欣赏你的作品。其实,有时候还能看出一个人的品性。

    吐槽到此结束~下面开始进入博客搭建环节


    值得你知道到话:

    是的,你没有看错!

    不用服务器,不用注册域名,不用花钱,不用敲大代码等等

    一个博客就值得你拥有 

    9136b4d489ec6a62c4b0e5e40aa091f9.png


    一、从创建到部署博客

    1、安装好Node.js

    别忘了用命令npm检验Node.js安装是否完成,

    关于hexo的安装教程比较简单,网上有很多完整的教程,在这里就不再赘述。

    安装Hexo 命令:

    npm install -g hexo-cli

    做完了这一步之后,恭喜你,前期的准备工作已经完成,环境这一步结束了。

    2、安装好Git

    5e36b7658587b33d39fe6aaeefa841f4.png

    3、在C盘下创建hexo文件夹

    591022d404d20ee505333362ea176133.png


    4、打开Hexo文件夹下,右键点击Git bash 下执行命令

    再使用一次这个命令:npm install hexo-cli -g

    创建博客KangChou:hexo init KangChou

    cd KangChou

    npm install

    1c118892ee1b490e1417d2c5a25adb71.png

    d21cdeeba2c7dc6d1e7b39532b8778bb.png


    5、命令hexo server启动github服务器

    b4ad28395f30e0a6b20d787f2046d10a.png


    6、浏览博客

    安照5中提示的网址http://localhost:4000/

    复制该网址在浏览器中打开,如下图所示:这样一个博客的架子就出来了

    767b9918e4e2c24445c019803ac1bc7b.png


    7、部署前哨(一):添加Github仓库地址

    在部署之前,我们需要先知道博客的部署地址,它需要对应 GitHub 的一个 Repository 的地址,这个信息需要我们来配置一下。(这里我就省略了,自己去布置),这是我的这个Github仓库

    https://github.com/KangChou/KangChou.github.io.git

    884edcd5a2803faf4c5a6ed18f7f52ab.png

    打开文件Hexo下的KangChou文件根目录下的 _config.yml 文件,我使用编辑器Sublime Text3打开的(或者你使用其他代码编辑器打开,千万别用文本编辑器打开),找到 Deployment 这个地方(提示:文件最后),把刚才新建的 Repository 的地址贴过来

    d3bd29ce3b7f5476cbb05567bfac15a3.png

    8400dce5b0305c1de1666bddfa1957f8.png


    8、部署前哨(二):部署插件

    需要安装一个支持 Git 的部署插件: hexo-deployer-git,有了它我们才可以顺利将其部署到 GitHub 上面(如果不安装的话,在执行部署命令时会报错).

    fc367dde4b7a9a62a8c659895bf082a2.png


    9、下面开始部署到Github

    如果8的插件部署没有问题就开始进行部署,首先输入部署命令如下:hexo deploy

    ef9ed9497716350df19cb9b643a6f968.png

    结尾....

    47d9209527a99663b3db3e5a90ee9724.png

    可以发现出现了上面的报错提示:

    Error: Spawn failed    at ChildProcess.task.on.code (C:\Hexo\KangChou\node_modules\hexo-util\lib\spawn.js:51:21)

    解决方法第一次:

    经搜索大量资料发现了下面的这个博客出现类似上述的一样问题,看了这个解决办法,我就斗胆试一试:

    https://blog.csdn.net/njc_sec/article/details/89021083

    28113186771179570f0d48f6937b43ad.png

    可惜我再重新安装上述的三个命令输入之后还是出先一样的错误。

    解决方法第二次:

    因此我怀疑可能是仓库的地址出错,因此去看看了看地址

    这是原来的地址:

    deploy:type: gitrepo: git@github.com:KangChou/KanChou.github.io.git#branch: master

    我按照出现错误提示中的网址去打开它:

     https://hexo.io/docs/troubleshooting.html

    f77566a60ad35afd965c8bc68fdeb8a8.png

    并找到了部署到Github目前的语法规定的网页下

    https://hexo.io/docs/github-pages

    403390fed6caa55f91cd8cbe0835b09a.png

    按照上面对部署仓库的地址,我将上述的Deploy的源码修改为

    deploy:  type: git  repo: https://github.com/KangChou/KangChou.github.io.git  # example, https://github.com/hexojs/hexojs.github.io  branch: gh-pages

    于是我再试了上述的三个命令:

    hexo clean

    hexo g

    hexo d

    最终出现下面的结果:说明出现的问题解决了

    8585478aa670056083494e31195418bb.png

    由于我起初没有部署仓库的密钥,所以要去仓库部署。


    10、创建的 ssh 密钥的密码

    (1)、我打开了我得仓库,并找到了设置

    fd7825431a901e21d845b6887d41b05b.png

    (2)查看部署密钥指南以了解更多信息

    https://developer.github.com/v3/guides/managing-deploy-keys/#deploy-keys

    找到了设置密码的步骤(经过翻译以后,目前我们进行到下面的5)

    21d12d88a21f81c4566c30b9583c348b.png

    (3)怎么创建SSH密钥?

    步骤:

    • 找到本地环境:C:\Users\admin\.ssh   这个路径下的用户/名称/.ssh

    • 在这路径下,打开gitbub的命令控制台

    • (I): git  init  //初始化一下,看看路径对不对

           (II):ssh-keygen -t rsa -C "你的邮箱"

    f76e0ae86df57084c6fb448da8a760a6.png

    • 到本地环境.ssh路径下查看,是否生成id_rsa,id_rsa.pub这个两个文件

    e3a396d0af479968ee3a0eb2994e16cb.png

    • 生成后,现在把id_rsa.pub里面的内容复制到githubd 的add github key 的key里面(也就是刚刚仓库的密钥添加的地方)

    3112bd568e2e5e89d5c533f04189e0f8.png

    点击Add SSH key获得下面结果

    注意:第一次提交,配置密钥,需要输入github的密码,如下就是添加秘钥成功

    4c87e4b6c368e9d988a25b16e038d5c2.png

    • 密钥配置成功后,要验证一下是否配置成功

      命令:ssh -T git@github.com 

    441c262e5193612d91842b6f6c876382.png

    出现下面提示,说明配置成功。

    Hi KangChou/KangChou.github.io! You've successfully authenticated, but GitHub does not provide shell access


    11、再次使用密钥部署

    仍然使用命令:

    hexo clean

    hexo g

    hexo d

    如果都没有问题就会出现下面的结果,输入你刚刚设置的SSH的密码

    6d0d35a48268c0b1dd5c094c4a1ca0d7.png

    但是这里又出错了

    01eeb74080894cd54825ce80bbaab51b.png

    追根溯源,我怀疑还是部署的仓库出现了问题:因此我再次打开,并做了修改

    2c3b816fa6d3b955e6ecac3dc25963c9.png

    命令hexo d执行又出错

    b8c37b174143a5095af3939e91de3cae.png

    下面终于找到了答案。这里要特别感谢@李典金 @崔庆才两位网络开发大佬的细节点拨才通过了上面的一个小环节,从而我力挽狂澜,一气呵成,搭建了后面的所有框架。


    12、终于部署成功

    最后终于找到了错误的原因,这是因为我创建的仓库下Github的SSH错误

    因此,我去仓库找到了

    346ce74ae8f5ed998e26780d8c2ec3a9.png

    将红色的部分复制到hexo文件目录下也就是你的博客文件末尾,打开修改如下

    d129a2947e0581b1eea5531652923c18.png

    再次输入命令hexo d执行以后出现下面的结果,

    出现Deploy done :git说明已经部署成功

    b98684578579ab7f54589edf3b11e0e9.png

    这时候我们访问一下 GitHub Repository 同名的链接,

    比如我的 KangChou 博客的 Repository 名称取的是 KangChou.github.io,

    那我就访问 http://KangChou.github.io

    这时候我们就可以看到跟本地一模一样的博客内容了。

    (此时你用手机同样可以打开该网站)

    58cfb40ad745fa1b9c157cfdfe817ded.png

    二、博客的网页主题

    主题的设置包括中文页面、整个页面的样式、页面风格等等,

    目前 Hexo 里面应用最多的主题基本就是 Next 主题,

    这个主题还是挺好看的,并且它支持的一些插件和功能都极为丰富,

    配置了这个主题,我们的博客可以支持更多的扩展功能,比如阅览进度条、中英文空格排版、图片懒加载等等。


    13、下载主题

    打开我的电脑创建的Hexo文件夹下的KangChou目录,

    单击右键Git bush输入下面的命令,执行结果如下:

    git clone https://github.com/theme-next/hexo-theme-next themes/next

    将下载后的themes主题替换原文件landscape中里所有的文件,并输入启动服务器命令

    hexo server

    执行结果如下

    2e74aff3d1ef5e349d5232621e7d163f.png


    14、配置中文环境

    在博客kangchou目录下打开_config.yml修改语言为中文汉语zh-Hans

    8c7e287dfbb62f8f69b4d0ef0b64669a.png

    执行的结果如下

    d61410a43e562e648450be05e768c4f6.png

    由于这只是部分为中文,而我的目的是大部分是中文的,

    为了方便还要在网页上手动添加更多中文描述


    15、配置中文菜单栏

    打开C:\Hexo\KangChou\themes\landscape\languages

    发有三种汉语:简体中文、香港繁体、台湾繁体

    836ac364c493124e78913ed54390b09f.png

    然后点开zh-Hans.yml其中的配置项就是已经翻译的文本

    b0c3d39df9ce8a93c68bbff2b0b0716a.png

    网站会根据你站点配置yml中的语言配置来去读取对应的语言文件

    打开你languages皮肤配置yml你会看到菜单栏基础配置:

    321887b30b56913321f62d11fc5aafdb.png

    发现homearchives菜单是开启的,

    现在我们全部开,只需要去掉前面的#,刷新浏览器

    55db1cc15236c314fcc3d9a18622e746.png

    尝试修改站点配置yml语言,重启服务后刷新浏览器

    1de779c3a25acfcb11dabce22ecb5bbc.png

    显然结果很成功,下面关闭git,将结果上传到Github页面:

    重新打开输入部署的三个命令:

    hexo clean

    hexo g

    hexo d

    结果和上面一样,此时就可以访问了.

    访问网站https://kangchou.github.io/

    b589b83e1cd205b1f8905a098510db51.png


    实际上文章到这里就已经结束博客的搭建了,至于其他的

    比如上传文章、上传图片,添加logo等这些我这里就不说了,

    hexo官网以及其他网站都能搜索到具体的教程,

    想继续完善博客网站部署的朋友可以去搜索相关文献学习。

    三、更换域名

    相信所有做互联网开发的科技工作者都知道,如果拥有属于自己的网站一定得看起来很专业、很官方、很大气。因此,有些科技工作者就想更换自己网站的域名,让自己的域名看起来官方标准。也还有另一个原因,因为Github毕竟是外国网站,国内用户访问相对较慢,因此,如果有国内的域名作为辅助会事半功倍。事实上,我个人觉得只要可以搭建网站,即便是不换域名也没什么区别。不过,既然我给大家写这个教程,我还是有必要说一下,毕竟有很多人还是愿意换域名的。如果不想花钱买域名的,这一小节可以跳过。16、购买域名+注册阿里网+实名认证自行注册,如果你是在校大学生,包括硕士、博士购买域名都是有学生价优惠的,但是一定要使用自己在学校注册的电子邮箱,因为阿里云官网数据库可以识别你的学生信息的学年期限。此外,注册以后一定要进行学生认证、实名认证。5e168cd0845dc2cf3b94ebaeb9da0ab7.png然后去买域名,域名的形式有很多,按照自己的需求进行设置域名名称和域名后缀。(实名认证最快是两天的时间)https://www.aliyun.com/

    10f1650f294ed218a50c77cda40a6b10.png

    d59b84ea235fa16938600b5d81aa7b18.png

    17、在阿里云添加域名解析

    cmd+ping你的http://github.io域名,得到一个IP

    3738ed075ad5f2b8d886cbb802459be4.png

    修改你的域名解析记录

    添加两个A记录,用得到的IP,一个主机记录为:“www”,一个为“@”,

    这样通过https://kangchou001.cn/就能访问到你的博客了

    3cf1576328dc0731b545ebb89b9350b5.png

    0ee22027f73484b404502bd3b4643e45.png

    18、填写绑定的域名在你的本地文件下也就是hexo—>你的博客(我的是KangChou)本地目录下找到 文件夹source ,并在该文件目录下面新建一个文件CNAME文件,那么一定要注意创建的CNAME文件没有任何扩展名(切记)

    75b4879d26d70fd480b54f8a630f3bf8.png

    再一次使用部署三命令hexo cleanhexo ghexo d完成以后,进入Github设置找到 Custom domain添加域名后保存即可

    c488e46cfcfefc9c1b6e1d32c63f1098.png

    19、刷新网页+更改域名成功

    如果上面的17没有出错的话,那么你填完域名保存以后会出现下面的结果

    6c3f22ded054d8ab1e672f53b5f06f3c.png

    那么就是更改域名成功了,此时你只需要点击上图的域名就可以访问啦。

    35d26f2cfa6ef7c394e237d5047db3d1.png

    ……到此完成了本博客的搭建……

    d488e1e7f69ab69c7e1efbcbc07eed51.png

    投稿--->展示你的才华

    请发邮件到

    kangsinx@yeah.net

    标题注明【投稿】

    告诉我们

    你是谁,从哪来,投什么

    我们会及时回复你

    0f31d200b21fb45474ac84f1bcc2e851.png

    点击左下角“查看我的个人博客

    展开全文
  • 各位好,我在用libcurl的接口往localhost服务器上传文件里上传文件的时候出现了下面的错误(用的机器系统是...另外还有一个问题,上传到服务器上的文件路径是怎么设定的呢,默认的路径是/var/www/html/这个文件夹吗?
  • 教程使用MATLAB搭建一个家庭监控系统视频温湿度报警-视频及源码下载地址.txt 系统背景:监控家里是否有陌生人闯入,家里的设备是否工作正常(北方的会员可能知道,如果家里的暖气是自供的话,冬天千万不能关暖气,...
  • Gin-vue-admin是一个基于vue和gin开发的全栈前后端分离的后台管理系统,集成jwt鉴权,动态路由,动态菜单,casbin鉴权,表单生成器,代码生成器等功能,提供多种示例文件,让您更多时间专注在业务开发。...
  • 官网目前最新的版本是1.4.3.3,但是存在一些 BUG,针对部分常见 BUG,我进行了修复,并编译好的文件放在了本仓库的 assets/downloads 目录下,你可以放心使用,当然你也可以 clone 官方源码自行修复 BUG 并编译...
  • 教你在服务器搭建个人面试项目 记一次害敖丙差点丢工作的线上P0事故 阿里五年老员工有什么话想对大家说? 从毕业技术专家我做了啥 50天全网2W粉,感谢坚持! MacBook Pro 入手一年了,到底香不香? 【互联网寒冬】...
  • CentOS7 上搭建多节点 Elasticsearch集群 轻量级 memcached缓存代理 twemproxy实践 前后端都分离了,该搞个好用的API管理系统了! 看源码 Java(JDK)源码阅读环境搭建 Spring Boot源码阅读调试环境搭建 Redis...
  • ESP8266-Demos ESP8266示例工程集合,基于ESP...环境同样还是安信可 ESP 系列一体化开发环境,只不过是原本基于ESP8266_NONOS_SDKv2.x.x的app兼容SDKv3.0.0。 第一步:下载SDKv3.0.0 乐鑫官方的github下载SDK: ...
  • 服务器:Tomcat 前端解析框架:Thymeleaf 开发工具:Idea 2017 版本管理工具:Maven 版本控制工具:GitHub 3.2 实现过程 3.2.1 商品首页实现 其他部分实现效果 3.2.2 二手商城实现 商城商品展示 3.2.3 ...
  • 明天我它放服务器再更新 ### 交代一些资源 我曾经写过一篇受大家欢迎的博客: 【Android】实现登录、注册、数据库操作(极简洁) 现在这篇文章是原先那篇的升级版,实现了前后端分离。 配套的后端服务器的笔记...
  • 手把手教你怎么使用云服务器 带你了解什么是Push消息推送 人在家中坐,班从天上来「小程序推送」 Java发送邮件时,必须要的一个配置! fastjson学习笔记 本地文件自动同步GitHub 为什么PUSH推送经常出事故? 三歪...
  • 如果你的浏览器提示说不能建立连接到服务器,那么首先检查一下 Apache 服务是否已经启动了: <pre><code>bash $ ps -aef | grep httpd </code></pre> 如果 Apache 正在运行,你将会看到一些 ...
  • diff命令和patch命令

    2016-02-08 22:12:00
    diff命令搭建网站离不开数据库,在Linux系统我们使用源码安装了MySQL服务器。不久我们发现 Google发布了一系列MySQL补丁,这些补丁很好很强大,这时候我们迫不及待地要新东西更新系统,那就用patch命令来打...

    diff命令和patch命令

    Linux就这个范儿

     

    2.9.5 文件对比命令——diff

    diff命令
    搭建网站离不开数据库,在Linux系统上我们使用源码安装了MySQL服务器。不久我们发现 Google发布了一系列MySQL补丁,这些补丁很好很强大,这时候我们迫不及待地要把新东西更新到系统上,那就用patch命令来打补丁吧。喝水不忘打井人,那补丁又是怎么做的呢?这个任务就需要文件对比命令diff来帮忙了。
    diff用来比较两个文本文件的差异,是代码版本管理的基石之一。diff采用动态规划算法实现差异比较,此算法的基础是最长公共子序列,特复杂的

    ,有兴趣的话可以读读科曼的《算法导论》。
    diff提供了正常(normal diff)、上下文(context diff)和合并(unified diff)三种格式告诉你两个文件的差异。正常格式的diff不太容易读,上下文格式的diff 在文件相似度比较高的情况下会显示大量重复的内容,很浪费空间。

    1990年,GNU diff率先推出了“合并格式”的diff,使用类似

    diff -ur file01_old file01_new > file01.patch

     

    命令就可将变动前和变动后的文件的上下文合并在一起显示。我举个例子咱们一起看看执行完diff -ur后产生的patch文件。
    72 === modified file 'configure.in'
    73 --- configure.in 2011-06-06 13:53:46 +0000
    74 +++ configure.in 2011-07-27 21:10:40 +0000
    75 @@ -361,15 +361,11 @@
    76
    77 if test "$GCC" = "yes"
    78 then
    79 - # mysqld requires -fno-implicit-templates.
    80 - # Disable exceptions as they seams to create problems with gcc and threads.
    81 # mysqld doesn't use run-time-type-checking, so we disable it.
    82 # We should use -Wno-invalid-offsetof flag to disable some warnings from gcc
    83 # regarding offset() usage in C++ which are done in a safe manner in the
    84 # server
    85 - CXXFLAGS="$CXXFLAGS -fno-implicit-templates -fno-exceptions -fno-rtti"
    86 - AC_DEFINE([HAVE_EXPLICIT_TEMPLATE_INSTANTIATION],
    87 - [1], [Defined by configure. Use explicit template instantiation.])
    88 + CXXFLAGS="$CXXFLAGS -fno-rtti"
    89 fi
    90
    91 MYSQL_PROG_AR

    73-74行是文件的基本信息。
    --- configure.in 2011-06-06 13:53:46 +0000
    +++ configure.in 2011-07-27 21:10:40 +0000
    “---”表示变动前的文件,“+++”表示变动后的文件。
    75行处变动的位置用两个@作为起首和结束。
      @@ -361,15 +361,11 @@
    “-361,15”分成三个部分:减号表示第一个文件,“361”表示第361行,“15”表示连续15行,也就是表示下面是第一个文件从第361行开始的连续15行。同样道理,“+361,11”表示第二个文件从第361行开始的连续11行。
    从 patch 文件的76行开始除了显示有变动的那些行外,还把这两个文件的上下文合并显示在一起。每一行最前面是标志位,空表示无变动,减号表示第一个文件删除的行,加号表示第二个文件新增的行。

     

    命令格式:
    diff[参数][文件1或目录1][文件2或目录2]

     

    命令参数:
    -  指定要显示多少行的文本。此参数必须与-c或-u参数一并使用。
     -a或--text  diff预设只会逐行比较文本文件。
    -b或--ignore-space-change  不检查空格字符的不同。
    -B或--ignore-blank-lines  不检查空白行。
    -c  显示全部内文,并标出不同之处。
    -C或--context  与执行"-c-"指令相同。
    -d或--minimal  使用不同的算法,以较小的单位来做比较。
    -D或ifdef  此参数的输出格式可用于前置处理器巨集。
    -e或--ed  此参数的输出格式可用于ed的script文件。
    -f或-forward-ed  输出的格式类似ed的script文件,但按照原来文件的顺序来显示不同处。
    -H或--speed-large-files  比较大文件时,可加快速度。
    -l或--ignore-matching-lines  若两个文件在某几行有所不同,而这几行同时都包含了选项中指定的字符或字符串,则不显示这两个文件的差异。
    -i或--ignore-case  不检查大小写的不同。
    -l或--paginate  将结果交由pr程序来分页。
    -n或--rcs  将比较结果以RCS的格式来显示。
    -N或--new-file  在比较目录时,若文件A仅出现在某个目录中,预设会显示:Only in目录:文件A若使用-N参数,则diff会将文件A与一个空白的文件比较。
    -p  若比较的文件为C语言的程序码文件时,显示差异所在的函数名称。
    -P或--unidirectional-new-file  与-N类似,但只有当第二个目录包含了一个第一个目录所没有的文件时,才会将这个文件与空白的文件做比较。
    -q或--brief  仅显示有无差异,不显示详细的信息。
    -r或--recursive  比较子目录中的文件。
    -s或--report-identical-files  若没有发现任何差异,仍然显示信息。
    -S或--starting-file  在比较目录时,从指定的文件开始比较。
    -t或--expand-tabs  在输出时,将tab字符展开。
    -T或--initial-tab  在每行前面加上tab字符以便对齐。
    -u,-U或--unified=  以合并的方式来显示文件内容的不同。
    -v或--version  显示版本信息。
    -w或--ignore-all-space  忽略全部的空格字符。
    -W或--width  在使用-y参数时,指定栏宽。
    -x或--exclude  不比较选项中所指定的文件或目录。
    -X或--exclude-from  您可以将文件或目录类型存成文本文件,然后在=中指定此文本文件。
    -y或--side-by-side  以并列的方式显示文件的异同之处。
    --help  显示帮助。
    --left-column  在使用-y参数时,若两个文件某一行内容相同,则仅在左侧的栏位显示该行内容。
    --suppress-common-lines  在使用-y参数时,仅显示不同之处。

     

    diff error.log error.logbak
    1272c1272
    < 2017-04-09 21:08:11 16975 [Warning] Aborted connection 4 to db: 'school' user: 'root' host: 'localhost' (Got timeout reading communication packets)
    ---
    > lklkl


    左边文件多出一行
    < 2017-04-09 21:08:11 16975 [Warning] Aborted connection 4 to db: 'school' user: 'root' host: 'localhost' (Got timeout reading communication packets)


    右边文件多出这一行
    > lklkl

     

     

    用mysqldump只导出表结构,然后用diff比较两个sql文件的异同来显示两个mysql实例的所有库和所有表是否有差异

    -y或--side-by-side  以并列的方式显示文件的异同之处。
    --suppress-common-lines   在使用-y参数时,仅显示不同之处。   
    --left-column   在使用-y参数时,若两个文件某一行内容相同,则仅在左侧的栏位显示该行内容。

    如果多出的话,会用<或>显示

    diff --side-by-side --suppress-common-lines  --left-column    2017-06-13-ALL-3306115.sql  2017-06-13-ALL-3306133.sql
    5cf44f99
    -3ec0-11e7-a73f-525400deed8b:1-7'; | 5cf44f99-3ec0-11e7-a73f-525400deed8b:1-12'; `id` int(11) DEFAULT NULL, | `id` int(11) DEFAULT NULL `tid` int(11) DEFAULT NULL < -- Dump completed on 2017-06-13 16:38:31 | -- Dump completed on 2017-06-13 16:39:40

     


    --brief  仅显示有无差异,不显示详细的信息。

    diff --side-by-side --suppress-common-lines  --left-column  --brief  2017-06-13-ALL-3306115.sql  2017-06-13-ALL-3306133.sql
    Files
    2017-06-13-ALL-3306115.sql and 2017-06-13-ALL-3306133.sql differ

     

     


     

    patch命令
    应用patch命令打补丁,命令虽不复杂,也是考验人品的机会,有时候不是打一次patch就成功完成软件更新的。

     

    1、首先要选择好更新软件相同版本的补丁,版本不对的话patch是打不上去的,例如google patch只能加在某些版本的MySQL之上。

    2、其次确定是否需要逐层打patch,例如google patch的 GlobalTransactionIds功能包含在patch v3内,但是如果只打patch v3的话,编译是通不过的,没办法只能一层一层打patch(v1->v2->v3)

    还有经常会遇到应用补丁到整个目录的,别忘了设置p级别,因为对于补丁文件而言,需要打补丁的文件在你电脑上的路径名跟在创建补丁的电脑上可能不同,

    p级别会告诉patch命令忽略掉路径名的几个部分以正确的识别文件。例如,如果你在demo.patch文件里看到这样一个文件名:

    /home/fangru/mysql-test/extra/rpl_tests/rpl_foreign_key.test

     

    建议:diff命令最好不要使用绝对路径,他人想应用补丁时,因为目录结构的差异,所以就不得不费力判断到底使用p几而很容易出错


    而你当前正工作在

    mysql-test/extra/rpl_tests/rpl_foreign_key.test

     

    我们来算一下p级别,方法是计算从路径最开始应删除几个路径分隔符后剩下的部分才与你的工作目录相一致

    在这个例子中p应为3,所以需要使用 patch –p3 < demo.patch 。在出现不匹配的情况时,patch会生成rej文件,你可以手工修改记录失败的地方

     

    nginx的ngx_req_status-master模块打补丁

     

    yum -y install patch unzip gcc


    cd /mydata/download/lnmppack/nginx-1.6.3
    patch -p1 < /usr/local/nginx_upstream_check_module-master/check_1.5.12+.patch
    patch -p1 < /usr/local/ngx_req_status-master/write_filter.patch

     

    转载于:https://www.cnblogs.com/MYSQLZOUQI/p/5185296.html

    展开全文
  • 在内网这种几乎理想的环境里直接比较,大家都差不多,但是放公网,放3G/4G网络情况下,或者使用内网丢包模拟,差距就很明显了。公网在高峰期有平均接近10%的丢包,wifi/3g/4g下更糟糕,这些都会让传输变卡。 ...
  • 二十三、网狐荣耀版出现在sys.servers中找不到服务器'rytreasuredblink'。请验证指定的服务器名称是否正确 这个问题是因为数据库是附加的,脚本代码里面的创建链接服务器脚本没有执行,执行一下就好了。Q-Q:457189 ...
  • 然后这个 <code>index.html</code> 发布到服务器上,在编译阶段所有的依赖,包括css,js,图片,字体等都会自动上传到cdn上,最后生成一个无任何依赖的纯html,大概是...
  • asp.net知识库

    2015-06-18 08:45:45
    在C#里ArrayList转换为Array 或 Array转换为ArrayList C# 2.0 在.NET 2.0中,让你的组件也可以绑定 .NET20 一种简单的窗口控件UI状态控制方法 翻译MSDN文章 —— 泛型FAQ:最佳实践 Visual C# 3.0 新特性概览 C#...
  • java 面试题 总结

    2009-09-16 08:45:34
    对于客户机,SessionBean是一种非持久性对象,它实现某些在服务器上运行的业务逻辑。 对于客户机,EntityBean是一种持久性对象,它代表一个存储在持久性存储器中的实体的对象视图,或是一个由现有企业应用程序实现的...
  • 用 Koa 来搭建服务器. 这我们需要<code>node_modules和<code>package.json打包进镜像 而官方的 node 镜像<code>node:8-alpine是不安装依赖的,需要我们自定义一个镜像 创建一个 <code>Dockerfile</code></p>...
  •  本书内容涵盖了用android开发的大部分场景,从android基础介绍、环境搭建、sdk介绍、market使用,应用剖析、组件介绍、实例演示等方面。从技术实现,讲解了5个android平台下的完整综合实例及源代码分析,...
  • 就可以理论n多的文章信息。在此作者犯了个小错误,一开始书写参数的时候作者是这么写的: <pre><code> offset = 0、5、10... var params = { 'offset':offset, 'type':...

空空如也

空空如也

1 2
收藏数 23
精华内容 9
关键字:

怎么把源码搭建到服务器上