运维人,你应该了解的三张武功心法图

互联网资讯采菊篱下 发表了文章 • 0 个评论 • 3804 次浏览 • 2015-10-11 15:04 • 来自相关话题

一、运维技能图

做为一个运维工程师,你知道你应该学习什么?怎么学习吗?朝哪个方向发展吗?下面一张运维工程师技能图,让你了解!





二、自动化运维路线图

运维自动化在国内已经声名远躁了,随着互联网快速的发展,运维不单单是几个脚本,几个文档可以胜任的!DevOps在国内很受热捧,但是真正的自动化之路,你走到了哪?你知道该怎么走吗?下面的武功心法图告诉你该怎么走!





三、云计算知识大宝典

从2013年开始,我国云计算持续快速发展,产业规模不断扩大,产业链日趋完善,产业环境不断优化。在这种情况下,不少创业者看到了市场,不少云计算公司崛起。但是人才在哪里,哪些是真正的云计算人才?云计算人才他应该会什么,下面Cloud computing image告诉你




 上图不清晰,扩大可清晰看到!
天下武功唯快不攻,这句话运用到互联网,就是你最快、最好、最早的掌握了互联网的最新技术,你就是比较吃香的人才!就像最新比较人们的容器Docker技术一样,如果你是先行者,你现在至少是一家Docker生态技术创业服务的合伙人!革命还未胜利,同志还需努力,各位苦逼的互联网工作者,加油! 查看全部


一、运维技能图


做为一个运维工程师,你知道你应该学习什么?怎么学习吗?朝哪个方向发展吗?下面一张运维工程师技能图,让你了解!
运维技能图.png


二、自动化运维路线图


运维自动化在国内已经声名远躁了,随着互联网快速的发展,运维不单单是几个脚本,几个文档可以胜任的!DevOps在国内很受热捧,但是真正的自动化之路,你走到了哪?你知道该怎么走吗?下面的武功心法图告诉你该怎么走!
自动化运维路线图.png


三、云计算知识大宝典


从2013年开始,我国云计算持续快速发展,产业规模不断扩大,产业链日趋完善,产业环境不断优化。在这种情况下,不少创业者看到了市场,不少云计算公司崛起。但是人才在哪里,哪些是真正的云计算人才?云计算人才他应该会什么,下面Cloud computing image告诉你
云计算知识图.png

 上图不清晰,扩大可清晰看到!
天下武功唯快不攻,这句话运用到互联网,就是你最快、最好、最早的掌握了互联网的最新技术,你就是比较吃香的人才!就像最新比较人们的容器Docker技术一样,如果你是先行者,你现在至少是一家Docker生态技术创业服务的合伙人!革命还未胜利,同志还需努力,各位苦逼的互联网工作者,加油!

云个球,其实就是远程桌面而已

互联网资讯采菊篱下 发表了文章 • 0 个评论 • 1391 次浏览 • 2015-10-09 23:47 • 来自相关话题

运维杂谈、扯淡!微信群的一次技术杂谈分享

菜鸟A

群里有对云办公感兴趣的吗?

菜鸟B

云办公 什么概念?什么形态?

菜鸟C

云办公 什么概念? 对啊!

菜鸟A

不知道就算了!

菜鸟D

云个球,其实就是远程桌面而已!

菜鸟B

不知道 你普及一下吗?真是的!

菜鸟C

真是的!

菜鸟B

@菜鸟D 别这么打击人家

菜鸟C

你不普及、介绍一下怎么让别人了解、感兴趣呢?

菜鸟D

今天某云给我发邮件让我续费,我在想这个时候我要是有自己的笔记本不就完啦[呲牙][呲牙]

菜鸟C

@菜鸟D 把人家姑娘吓到了, 云个球,其实就是远程桌面而已!

菜鸟B

这话太堵人了!

菜鸟C

这话多堵人啊! @菜鸟D 赶紧发红包!

菜鸟D

所谓的云其实就是一种高可用的计算方式罢了,云桌面对性能的消耗是巨大的,这种搞法不如用固态硬盘的本地系统,我个人的观点还是首先需要建立起强大的本地化系统。

菜鸟B

那就是说底层很主要呗?

菜鸟D

云桌面给你配个386的主机你用不?

菜鸟B

386是what?

菜鸟C

@菜鸟D 说的云里雾里 3850?

菜鸟D

386就是i7的爷爷的的爷爷的那一代cpu

菜鸟B

我去 那用毛线啊!估计给我爷爷 他打个斗地主 也嫌弃!

菜鸟D

所以吗,没有整体系统性能的提升那云个球呀,我就反感商业公司这种扯淡的大忽悠!

菜鸟B

嘿嘿 没事 在这个群 使劲吐槽!

菜鸟D

本地化系统本身的功能进化才是最重要的!

菜鸟C

@菜鸟D 有道理!

菜鸟B

本身性能解决,确实是用户体验最佳的表现!

菜鸟D

当年的很多所谓的购买云计算资源是因为小鸡已经无法满足自己的生产需要,现在技术进化这么快,自建数据中心已经基本没有什么技术壁垒啦,还要云就是傻x [偷笑][偷笑][偷笑]

菜鸟C

产品不谈性能和用户体验就是耍流氓!

菜鸟B

@菜鸟D 这个可能会成为以后的趋势,自经营基础设施,有能力的公司可能都会自建机房数据中心! 因为钱放自己身上是最好的!

菜鸟D

很早就有篇译文分析了自建数据中心和购买云的性价比,结论就是购买和自建基本少不了多少银子,从长远来看自建带来的投资回报率更高些,现在自建数据中心的资源企业回收之后就可以部署其他新应用,基础资源投入后也就剩下掏电费啦,所以云是一种新的计算模式,是建立在数据中心架构上的高可用工程化计算资源部署。

菜鸟B

@菜鸟D 这个我赞同,长远来看自建比较好。但是国内企业现在局面基本以创业公司和小型企业居多和活跃!所以云现在有存在的市场和价值!

菜鸟D

我个人觉得传统大it公司一旦觉悟,钱还是他们稳賺,现在云计算还处在成长期,但自建数据中心模式肯定是未来企业的产品市场!

菜鸟C

@菜鸟D 有远见!

菜鸟B

自建数据中心模式肯定是未来企业的产品市场 @菜鸟D 那你可以考虑向这个方向创业啊!那以后你就挣大发了,王健林卖房子,以后你就做数据中心服务一体化构建!

菜鸟D

人家cisco,h3c,华为,VMware,redhat都没闲着!

菜鸟B

都自建吗?

菜鸟D

自建需要硬件吧,需要方案吧,需要规划吧[偷笑][偷笑]

菜鸟B

这是肯定的需要,然后呢?

菜鸟D

那不就完了吗,需要你总的投资吧,建起来啦就该自己管理运维啦!

菜鸟B

那你赶紧建一个去!

菜鸟D

人家卖的是整体解决方案!

菜鸟B

以后互联网格局相对比较稳定了,那是不是自建大的数据中心?那这些大公司又又得挣了?

菜鸟D

小规模也可以呀,人家2000多人的单位搞7台服务器做个小数据中心,服务器都在上边跑,这才是真正的省资源!

菜鸟B

那这么说,以后卖机房自建数据中心创建方案、实施、硬件一条龙服务的厂商比较吃香?

菜鸟D

其实力哥讲的那个kvm现在就可以干这些事,只不过没有VMware 那种自动漂移和健康状态监控

菜鸟B

自动漂移和健康状态监控 可以二次开发 支持吗?

菜鸟D

我们已经进行中啦,单位的事我不馋和[呲牙][呲牙]

菜鸟B

那你做什么?

菜鸟D

其实给小微企业做那种5台基础然后可以横向扩展的数据中心挺有前途的,个人觉得!

菜鸟B

有点意思!

菜鸟D

@菜鸟B 我参与方案制订和技术讨论

菜鸟B

@菜鸟D 原来你属于智慧阶级 非民工阶级

菜鸟D

现在很多企业,事业单位都还是单服务器呐,真要让数据中心模式成为一种方式,那很多都需要升级的!

菜鸟B

你所说的升级 指的是 硬件方面的配置吗?

菜鸟D

从传统的机房升级到数据中心计算模式
我对数据中心计算模式的理解:数据中心就是工程化的计算资源池,传统硬件在这里就是细胞资源[呲牙][呲牙]

菜鸟B

颗粒化?

菜鸟C

@菜鸟D 你可以写书了!

菜鸟D

思想碎片而已,写书又不挣钱,能和大家闲扯淡就很好啦!

菜鸟B

好一个思想碎片化 写书确实不挣钱,就是挣个名声!

菜鸟D

未来这些细胞资源肯定需要用linux来首先变成具有强大本地化功能的系统
其实我一直觉得蚁穴结构很有意思,数据中心就是蚁穴,然后是各种蚁巢(硬件设施),再然后就是蚂蚁(容器化的微服务)[呲牙][呲牙][呲牙]

菜鸟B

好形象的比喻,高!好了菜鸟扯淡杂谈就这样结束了。
此次杂谈菜鸟主角------>菜鸟D(解宝琦)  配角------>菜鸟B(采菊篱下)   友情出演菜鸟C(邓荣兴),群众演员菜鸟A! 查看全部
运维杂谈、扯淡!微信群的一次技术杂谈分享


菜鸟A


群里有对云办公感兴趣的吗?


菜鸟B


云办公 什么概念?什么形态?


菜鸟C


云办公 什么概念? 对啊!


菜鸟A


不知道就算了!


菜鸟D


云个球,其实就是远程桌面而已!


菜鸟B


不知道 你普及一下吗?真是的!


菜鸟C


真是的!


菜鸟B


@菜鸟D 别这么打击人家


菜鸟C


你不普及、介绍一下怎么让别人了解、感兴趣呢?


菜鸟D


今天某云给我发邮件让我续费,我在想这个时候我要是有自己的笔记本不就完啦[呲牙][呲牙]


菜鸟C


@菜鸟D 把人家姑娘吓到了, 云个球,其实就是远程桌面而已!


菜鸟B


这话太堵人了!


菜鸟C


这话多堵人啊! @菜鸟D 赶紧发红包!


菜鸟D


所谓的云其实就是一种高可用的计算方式罢了,云桌面对性能的消耗是巨大的,这种搞法不如用固态硬盘的本地系统,我个人的观点还是首先需要建立起强大的本地化系统。


菜鸟B


那就是说底层很主要呗?


菜鸟D


云桌面给你配个386的主机你用不?


菜鸟B


386是what?


菜鸟C


@菜鸟D 说的云里雾里 3850?


菜鸟D


386就是i7的爷爷的的爷爷的那一代cpu


菜鸟B


我去  那用毛线啊!估计给我爷爷 他打个斗地主 也嫌弃!


菜鸟D


所以吗,没有整体系统性能的提升那云个球呀,我就反感商业公司这种扯淡的大忽悠!


菜鸟B


嘿嘿 没事 在这个群 使劲吐槽!


菜鸟D


本地化系统本身的功能进化才是最重要的!


菜鸟C


@菜鸟D  有道理!


菜鸟B


本身性能解决,确实是用户体验最佳的表现!


菜鸟D


当年的很多所谓的购买云计算资源是因为小鸡已经无法满足自己的生产需要,现在技术进化这么快,自建数据中心已经基本没有什么技术壁垒啦,还要云就是傻x [偷笑][偷笑][偷笑]


菜鸟C


产品不谈性能和用户体验就是耍流氓!


菜鸟B


@菜鸟D 这个可能会成为以后的趋势,自经营基础设施,有能力的公司可能都会自建机房数据中心! 因为钱放自己身上是最好的!


菜鸟D


很早就有篇译文分析了自建数据中心和购买云的性价比,结论就是购买和自建基本少不了多少银子,从长远来看自建带来的投资回报率更高些,现在自建数据中心的资源企业回收之后就可以部署其他新应用,基础资源投入后也就剩下掏电费啦,所以云是一种新的计算模式,是建立在数据中心架构上的高可用工程化计算资源部署。


菜鸟B


@菜鸟D 这个我赞同,长远来看自建比较好。但是国内企业现在局面基本以创业公司和小型企业居多和活跃!所以云现在有存在的市场和价值!


菜鸟D


我个人觉得传统大it公司一旦觉悟,钱还是他们稳賺,现在云计算还处在成长期,但自建数据中心模式肯定是未来企业的产品市场!


菜鸟C


@菜鸟D 有远见!


菜鸟B


自建数据中心模式肯定是未来企业的产品市场  @菜鸟D 那你可以考虑向这个方向创业啊!那以后你就挣大发了,王健林卖房子,以后你就做数据中心服务一体化构建!


菜鸟D


人家cisco,h3c,华为,VMware,redhat都没闲着!


菜鸟B


都自建吗?


菜鸟D


自建需要硬件吧,需要方案吧,需要规划吧[偷笑][偷笑]


菜鸟B


这是肯定的需要,然后呢?


菜鸟D


那不就完了吗,需要你总的投资吧,建起来啦就该自己管理运维啦!


菜鸟B


那你赶紧建一个去!


菜鸟D


人家卖的是整体解决方案!


菜鸟B


以后互联网格局相对比较稳定了,那是不是自建大的数据中心?那这些大公司又又得挣了?


菜鸟D


小规模也可以呀,人家2000多人的单位搞7台服务器做个小数据中心,服务器都在上边跑,这才是真正的省资源!


菜鸟B


那这么说,以后卖机房自建数据中心创建方案、实施、硬件一条龙服务的厂商比较吃香?


菜鸟D


其实力哥讲的那个kvm现在就可以干这些事,只不过没有VMware 那种自动漂移和健康状态监控


菜鸟B


自动漂移和健康状态监控 可以二次开发 支持吗?


菜鸟D


我们已经进行中啦,单位的事我不馋和[呲牙][呲牙]


菜鸟B


那你做什么?


菜鸟D


其实给小微企业做那种5台基础然后可以横向扩展的数据中心挺有前途的,个人觉得!


菜鸟B


有点意思!


菜鸟D


@菜鸟B  我参与方案制订和技术讨论


菜鸟B


@菜鸟D  原来你属于智慧阶级  非民工阶级


菜鸟D


现在很多企业,事业单位都还是单服务器呐,真要让数据中心模式成为一种方式,那很多都需要升级的!


菜鸟B


你所说的升级 指的是 硬件方面的配置吗?


菜鸟D


从传统的机房升级到数据中心计算模式
我对数据中心计算模式的理解:数据中心就是工程化的计算资源池,传统硬件在这里就是细胞资源[呲牙][呲牙]


菜鸟B


颗粒化?


菜鸟C


@菜鸟D 你可以写书了!


菜鸟D


思想碎片而已,写书又不挣钱,能和大家闲扯淡就很好啦!


菜鸟B


好一个思想碎片化 写书确实不挣钱,就是挣个名声!


菜鸟D


未来这些细胞资源肯定需要用linux来首先变成具有强大本地化功能的系统
其实我一直觉得蚁穴结构很有意思,数据中心就是蚁穴,然后是各种蚁巢(硬件设施),再然后就是蚂蚁(容器化的微服务)[呲牙][呲牙][呲牙]


菜鸟B


好形象的比喻,高!
好了菜鸟扯淡杂谈就这样结束了。
此次杂谈菜鸟主角------>菜鸟D(解宝琦)  配角------>菜鸟B(采菊篱下)   友情出演菜鸟C(邓荣兴),群众演员菜鸟A!

解决RedHat5.8无法利用yum安装软件问题

运维技术Ansible 发表了文章 • 0 个评论 • 2831 次浏览 • 2015-10-09 21:19 • 来自相关话题

好久都没有用红帽系统了,今天一位测试的同事,在RedHat5.8的环境需要测试,安装apache,但是报没有gcc,但是用yum安装gcc结果如下:

[root@localhost ~]# yum -y install gcc
Loaded plugins: katello, product-id, security, subscription-manager
Updating certificate-based repositories.
Unable to read consumer identity
Setting up Install Process
No package gcc available.
Nothing to do报没有gcc软件包存在,她没有办法,只好叫我帮忙弄好了!
 
系统版本如下:[root@localhost ~]# cat /etc/issue
Red Hat Enterprise Linux Server release 5.8 (Tikanga)
Kernel \r on an \m解决过程:

下载163安装源

[root@localhost~]# wget http://mirrors.163.com/.help/CentOS5-Base-163.repo
--2015-10-09 14:33:10-- http://mirrors.163.com/.help/CentOS5-Base-163.repo
Resolving mirrors.163.com... 123.58.173.186,123.58.173.185
Connecting to mirrors.163.com|123.58.173.186|:80...connected.
HTTP request sent, awaiting response... 200 OK
Length: 2341 (2.3K) [application/octet-stream]
Saving to: `CentOS5-Base-163.repo'

100%2,341 --.-K/s in 0s

2015-10-09 14:33:22 (108 MB/s) -`CentOS5-Base-163.repo' saved [2341/2341][root@localhost~]# mv CentOS5-Base-163.repo /etc/yum.repos.d/

修改repo文件

*** 把$releasever替换成5
[root@localhost yum.repos.d]# sed -i 's#$releasever#5#g' ./CentOS5-Base-163.repo

清除原有缓存

[root@localhost yum.repos.d]# yum clean all
Loaded plugins: katello, product-id, security, subscription-manager
Updating certificate-based repositories.
Unable to read consumer identity
Cleaning up Everything

获取yum列表

[root@localhost yum.repos.d]# yum makecache
Loaded plugins: katello, product-id, security, subscription-manager
Updating certificate-based repositories.
Unable to read consumer identity
addons | 1.9 kB 00:00
addons/filelists_db | 570 B 00:00
addons/other_db | 554 B 00:00
addons/primary_db | 1.1 kB 00:00
base | 1.1 kB 00:00
base/filelists | 3.7 MB 00:11
base/other | 14 MB 01:04
base/group | 1.1 MB 00:03
base/primary | 1.3 MB 00:06
epel | 3.6 kB 00:00
epel/filelists_db | 4.1 MB 00:16
epel/updateinfo | 510 kB 00:02
epel/other_db | 1.6 MB 00:05
epel/primary_db | 2.9 MB 00:14
extras | 2.1 kB 00:00
extras/filelists_db | 224 kB 00:00
extras/other_db | 442 kB 00:01
extras/group | 9.7 kB 00:00
extras/primary_db | 173 kB 00:00
updates | 1.9 kB 00:00
updates/filelists_db | 2.1 MB 00:09
updates/other_db | 11 MB 00:29
updates/primary_db | 531 kB 00:00
base 3667/3667
base 3667/3667
base 3667/3667
Metadata Cache Created

搜索安装




[root@localhost yum.repos.d]# yum -y install gcc 查看全部


好久都没有用红帽系统了,今天一位测试的同事,在RedHat5.8的环境需要测试,安装apache,但是报没有gcc,但是用yum安装gcc结果如下:


[root@localhost ~]# yum -y install gcc
Loaded plugins: katello, product-id, security, subscription-manager
Updating certificate-based repositories.
Unable to read consumer identity
Setting up Install Process
No package gcc available.
Nothing to do
报没有gcc软件包存在,她没有办法,只好叫我帮忙弄好了!
 
系统版本如下:
[root@localhost ~]# cat /etc/issue
Red Hat Enterprise Linux Server release 5.8 (Tikanga)
Kernel \r on an \m
解决过程:


下载163安装源


[root@localhost~]# wget http://mirrors.163.com/.help/CentOS5-Base-163.repo
--2015-10-09 14:33:10-- http://mirrors.163.com/.help/CentOS5-Base-163.repo
Resolving mirrors.163.com... 123.58.173.186,123.58.173.185
Connecting to mirrors.163.com|123.58.173.186|:80...connected.
HTTP request sent, awaiting response... 200 OK
Length: 2341 (2.3K) [application/octet-stream]
Saving to: `CentOS5-Base-163.repo'

100%2,341 --.-K/s in 0s

2015-10-09 14:33:22 (108 MB/s) -`CentOS5-Base-163.repo' saved [2341/2341]
[root@localhost~]# mv CentOS5-Base-163.repo /etc/yum.repos.d/


修改repo文件


*** 把$releasever替换成5
[root@localhost yum.repos.d]# sed -i 's#$releasever#5#g' ./CentOS5-Base-163.repo


清除原有缓存


[root@localhost yum.repos.d]# yum clean all
Loaded plugins: katello, product-id, security, subscription-manager
Updating certificate-based repositories.
Unable to read consumer identity
Cleaning up Everything


获取yum列表


[root@localhost yum.repos.d]# yum makecache
Loaded plugins: katello, product-id, security, subscription-manager
Updating certificate-based repositories.
Unable to read consumer identity
addons | 1.9 kB 00:00
addons/filelists_db | 570 B 00:00
addons/other_db | 554 B 00:00
addons/primary_db | 1.1 kB 00:00
base | 1.1 kB 00:00
base/filelists | 3.7 MB 00:11
base/other | 14 MB 01:04
base/group | 1.1 MB 00:03
base/primary | 1.3 MB 00:06
epel | 3.6 kB 00:00
epel/filelists_db | 4.1 MB 00:16
epel/updateinfo | 510 kB 00:02
epel/other_db | 1.6 MB 00:05
epel/primary_db | 2.9 MB 00:14
extras | 2.1 kB 00:00
extras/filelists_db | 224 kB 00:00
extras/other_db | 442 kB 00:01
extras/group | 9.7 kB 00:00
extras/primary_db | 173 kB 00:00
updates | 1.9 kB 00:00
updates/filelists_db | 2.1 MB 00:09
updates/other_db | 11 MB 00:29
updates/primary_db | 531 kB 00:00
base 3667/3667
base 3667/3667
base 3667/3667
Metadata Cache Created


搜索安装


gcc.png
[root@localhost yum.repos.d]# yum -y install gcc

苦逼运维

互联网资讯采菊篱下 发表了文章 • 0 个评论 • 1213 次浏览 • 2015-10-08 18:29 • 来自相关话题

今天在群里,一哥们发出了一个好湿,大家共爽!

横批

苦逼运维

上联

一个项目两部电脑三餐盒饭只为四千工资搞得五脏俱损六神无主仍然七点起床八点开会处理九个报警十分辛苦

下联

十年运维九年加班八面无光忙的七窍生烟到头六亲不认五体投地依旧四肢酸软三更加班只为二个臭钱一生孤独
总结:运维虽苦逼,领导需善待;如若无感悟,携程你榜样!
 
 运维杂谈、扯淡群 里面什么都可以说,畅所欲言,越激烈越好,各抒己见!思维发散 自由言论!自由表达!侃大山 生活需要扯淡 让生活解压!
有意加入者,扫码加入,加入不了,可以加微信号:crh_Love_ghl  注明拉取进杂谈群! 查看全部
今天在群里,一哥们发出了一个好湿,大家共爽!


横批


苦逼运维


上联


一个项目两部电脑三餐盒饭只为四千工资搞得五脏俱损六神无主仍然七点起床八点开会处理九个报警十分辛苦


下联


十年运维九年加班八面无光忙的七窍生烟到头六亲不认五体投地依旧四肢酸软三更加班只为二个臭钱一生孤独

总结:运维虽苦逼,领导需善待;如若无感悟,携程你榜样!
 
 运维杂谈、扯淡群 里面什么都可以说,畅所欲言,越激烈越好,各抒己见!思维发散 自由言论!自由表达!侃大山 生活需要扯淡 让生活解压!
有意加入者,扫码加入,加入不了,可以加微信号:crh_Love_ghl  注明拉取进杂谈群!
openskill.jpg

Error: php56w-common conflicts with php-common-5.3.3-46.el6_6.x86_64

运维技术OpenSkill 回复了问题 • 2 人关注 • 1 个回复 • 2878 次浏览 • 2015-10-08 15:53 • 来自相关话题

configure: error: mcrypt.h not found. Please reinstall libmcrypt.

编程语言OpenSkill 回复了问题 • 2 人关注 • 1 个回复 • 2281 次浏览 • 2015-10-08 14:09 • 来自相关话题

Msyql备份之mysqldump介绍

数据库采菊篱下 发表了文章 • 2 个评论 • 802 次浏览 • 2015-10-07 18:40 • 来自相关话题

一、​备份MYSQL

把一个库导出到一个SQL文件

mysqldump -uroot -ppassword db_name > /data/rh/db_name.sql

备份多个库(使用-B参数)
-B, --databases Dump several databases. Note the difference in usage; in
this case no tables are given. All name arguments are
regarded as database names. 'USE db_name;' will be
included in the output.
如果需要指定字符集的话,可以使用--default-character-set参数。

备份全部库

mysqldump -uroot -ppassword --all-databases > /data/rh/db_all.sql

备份某个表

mysqldump -uroot -ppassword dbname table_name > /data/rh/table_name.sql

备份某库多个表

mysqldump -uroot -ppassword dbname tb1_name tb2_name > /data/rh/tb1_tab2.sql

备份数据库的表结构

mysqldump -uroot -ppassword -q -d dbname > /data/bakm3310/dbname.sql
-q 就是忽略缓存数据
-d 就是没有数据行信息

导出某库某表的结构

mysqldump -uroot -ppassword -d dbname tbname > /data/rh/tbname.sql

导出某库某表的内容

mysqldump -uroot -ppassword -t dbname tbname > /data/rh/tbname.sql
-t 没有创建表的创建信息二、恢复数据
有两种恢复方式如下:

第一种

mysql -uroot -ppassword db_name < /data/rh/db_name.sql

第二种

#mysql -u root -ppasword
mysql> use db_name;
mysql> source /data/rh/db_name.sql; 查看全部
一、​备份MYSQL


把一个库导出到一个SQL文件


mysqldump -uroot -ppassword db_name > /data/rh/db_name.sql 

备份多个库(使用-B参数)
-B, --databases Dump several databases. Note the difference in usage; in
this case no tables are given. All name arguments are
regarded as database names. 'USE db_name;' will be
included in the output.
如果需要指定字符集的话,可以使用--default-character-set参数。


备份全部库


mysqldump -uroot -ppassword --all-databases > /data/rh/db_all.sql


备份某个表


mysqldump -uroot -ppassword dbname table_name > /data/rh/table_name.sql


备份某库多个表


mysqldump -uroot -ppassword dbname tb1_name tb2_name > /data/rh/tb1_tab2.sql


备份数据库的表结构


mysqldump -uroot -ppassword -q -d dbname > /data/bakm3310/dbname.sql
-q 就是忽略缓存数据
-d 就是没有数据行信息


导出某库某表的结构


mysqldump -uroot -ppassword -d dbname tbname > /data/rh/tbname.sql


导出某库某表的内容


mysqldump -uroot -ppassword -t dbname tbname > /data/rh/tbname.sql
-t 没有创建表的创建信息
二、恢复数据
有两种恢复方式如下:


第一种


mysql -uroot -ppassword db_name < /data/rh/db_name.sql


第二种


#mysql -u root -ppasword
mysql> use db_name;
mysql> source /data/rh/db_name.sql;

Flask ImportError: No module named XXX问题解决

编程语言koyo 发表了文章 • 0 个评论 • 1752 次浏览 • 2015-09-28 19:59 • 来自相关话题

第一个flask项目,做一个简单的网址导航。部署项目后,浏览器访问报500错误。查看apache日志后,报错如下:
[Tue Jan 06 09:58:22 2015] [error] hello world
[Tue Jan 06 09:58:22 2015] [error] [client 112.64.71.131] mod_wsgi (pid=31615): Target WSGI script '/var/www/qianshan/qianshan.wsgi' cannot be loaded as Python module.
[Tue Jan 06 09:58:22 2015] [error] [client 112.64.71.131] mod_wsgi (pid=31615): Exception occurred processing WSGI script '/var/www/qianshan/qianshan.wsgi'.
[Tue Jan 06 09:58:22 2015] [error] [client 112.64.71.131] Traceback (most recent call last):
[Tue Jan 06 09:58:22 2015] [error] [client 112.64.71.131] File "/var/www/qianshan/qianshan.wsgi", line 12, in <module>
[Tue Jan 06 09:58:22 2015] [error] [client 112.64.71.131] from qianshan import app as application
[Tue Jan 06 09:58:22 2015] [error] [client 112.64.71.131] File "/var/www/qianshan/__init__.py", line 4, in <module>
[Tue Jan 06 09:58:22 2015] [error] [client 112.64.71.131] import extras
[Tue Jan 06 09:58:22 2015] [error] [client 112.64.71.131] ImportError: No module named extras项目结构
qianshan
├── config.ini
├── extraModules.py
├── extras.py
├── __init__.py
├── qianshan.wsgi
├── static
├── templates
├── test.py
└── venvinit.py代码
from flask import Flask
from flask import render_template
import extraModules
import extras#如果没有这句无报错正常运行,只有一些静态资源没拉到,可能是其他问题
import ConfigParser
import codecs
import logging

logging.basicConfig(filename='qianshan.log', level=logging.INFO)
logging.info('Started')

app = Flask(__name__)

logging.info('App established')

@app.route("/")
def index():
return render_template('index.html')extras.py是实际我想要导入的模块,里面有两个我需要的类;extraModules是测试模块,import extraModules是成功的,apache日志的第一行也打出来了;他们的代码分别如下:
# Filename : extras.py

class Block:
def setNo(self, no):
self.no = int(no)
def getNo(self):
return self.no
def setName(self, name):
self.name = name
def getName(self):
return self.name
def setPriority(self, priority):
self.priority = int(priority)
def getPriority(self):
return self.priority
def setHotKeyAsc(self, hotKeyAsc):
self.hotKeyAsc = hotKeyAsc
def getHotKeyAsc(self):
return self.hotKeyAsc
def setElement(self, equation):
s = equation.split(':')
if(s[0] == 'no'):
self.setNo(s[1])
elif(s[0] == 'name'):
self.setName(s[1])
elif(s[0] == 'priority'):
self.setPriority(s[1])
elif(s[0] == 'hot_key_asc'):
self.setHotKeyAsc(s[1])

class Website:
def setNo(self, no):
self.no = int(no)
def getNo(self):
return self.no
def setName(self, name):
self.name = name
def getName(self):
return self.name
def setUrl(self, url):
self.url = url
def getUrl(self):
return self.url
def setIcon(self, icon):
self.icon = icon
def getIcon(self):
return self.icon
def setBlockNo(self, blockNo):
self.blockNo = int(blockNo)
def setPriority(self, priority):
self.priority = int(priority)
def getPriority(self):
return self.priority
def setHotKeyAsc(self, hotKeyAsc):
self.hotKeyAsc = hotKeyAsc
def getHotKeyAsc(self):
return self.hotKeyAsc
def setElement(self, equation):
s = equation.split(':')
if(s[0] == 'no'):
self.setNo(s[1])
elif(s[0] == 'name'):
self.setName(s[1])
elif(s[0] == 'url'):
self.setUrl(s[1])
elif(s[0] == 'icon'):
self.setIcon(s[1])
elif(s[0] == 'priority'):
self.setPriority(s[1])
elif(s[0] == 'hot_key_asc'):
self.setHotKeyAsc(s[1])

if __name__ == '__main__':
block = Block()
website = Website()extraModules.py代码如下:
# Filename : extraModules.py
print 'hello world'其他背景信息:
项目部署在digital ocean的ubuntu12.x主机上,python版本2.7.3.

还请指导下,是不是extras.py有什么地方大意了,小弟新学python不久,请多敲打点拨

谢谢1L和2L前辈的指点啊!白天一直在上课,以下为1月7日晚更新,我把wsgi以及virtual host的配置也发一下,wsgi中是有配置/var/www/qianshan/为sys.path的。

qianshan.wsgi如下:
#!/usr/bin/python
activate_this = '/var/www/qianshan/venv/bin/activate_this.py'
execfile(activate_this, dict(__file__=activate_this))

import sys
import logging

logging.basicConfig(stream=sys.stderr)
sys.path.insert(0,'/var/www/qianshan/')
sys.path.insert(1,'/var/www/')

from qianshan import app as application
application.secret_key = 'Add your secret key'Virtual Host配置:
<VirtualHost *:80>
ServerName qianshan.co
ServerAdmin spark@qianshan.co
WSGIScriptAlias / /var/www/qianshan/qianshan.wsgi
<Directory /var/www/qianshan/>
Order allow,deny
Allow from all
</Directory>
Alias /static /var/www/qianshan/static
<Directory /var/www/qianshan/static/>
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>我会按照1L和2L的方法试试,如果不行再在这里说
 
 
问题解决如下:
 
1.首先确认是文件的权限问题。和import的语法无关。
下图中可以看到目前项目根目录下各个文件的权限,otherModules(就是之前的extras)对root所在的用户组没有读权限。
-rwx------ 1 root root 9091 Jan 3 09:27 config.ini
-rwxr--r-- 1 root root 404 Jan 7 22:58 __init__.py
-rwx------ 1 root root 2316 Jan 7 23:07 otherModules.py
-rwxr--r-- 1 root root 360 Jan 5 23:34 qianshan.wsgi
drwxr-xr-x 2 root root 4096 Jan 3 09:08 static
drwxr-xr-x 2 root root 4096 Jan 3 08:51 templates
-rw-r--r-- 1 root root 262 Jan 7 23:05 testModule.py
-rwx------ 1 root root 1716 Jan 3 09:36 test.py
drwxr-xr-x 6 root root 4096 Jan 3 08:05 venvchmod调整权限后,权限如下,项目可以正常访问,不再报错
-rwxr--r-- 1 root root 9091 Jan 3 09:27 config.ini
-rwxr--r-- 1 root root 404 Jan 7 22:58 __init__.py
-rwxr--r-- 1 root root 2316 Jan 7 23:07 otherModules.py
-rwxr--r-- 1 root root 360 Jan 5 23:34 qianshan.wsgi
drwxrwxr-x 2 root root 4096 Jan 3 09:08 static
drwxrwxr-x 2 root root 4096 Jan 3 08:51 templates
-rw-r--r-- 1 root root 262 Jan 7 23:05 testModule.py
-rwxr--r-- 1 root root 1716 Jan 3 09:36 test.py
drwxr-xr-x 6 root root 4096 Jan 3 08:05 venv大体过程就这样!
原文地址:分享原文 查看全部
第一个flask项目,做一个简单的网址导航。部署项目后,浏览器访问报500错误。查看apache日志后,报错如下:
[Tue Jan 06 09:58:22 2015] [error] hello world
[Tue Jan 06 09:58:22 2015] [error] [client 112.64.71.131] mod_wsgi (pid=31615): Target WSGI script '/var/www/qianshan/qianshan.wsgi' cannot be loaded as Python module.
[Tue Jan 06 09:58:22 2015] [error] [client 112.64.71.131] mod_wsgi (pid=31615): Exception occurred processing WSGI script '/var/www/qianshan/qianshan.wsgi'.
[Tue Jan 06 09:58:22 2015] [error] [client 112.64.71.131] Traceback (most recent call last):
[Tue Jan 06 09:58:22 2015] [error] [client 112.64.71.131] File "/var/www/qianshan/qianshan.wsgi", line 12, in <module>
[Tue Jan 06 09:58:22 2015] [error] [client 112.64.71.131] from qianshan import app as application
[Tue Jan 06 09:58:22 2015] [error] [client 112.64.71.131] File "/var/www/qianshan/__init__.py", line 4, in <module>
[Tue Jan 06 09:58:22 2015] [error] [client 112.64.71.131] import extras
[Tue Jan 06 09:58:22 2015] [error] [client 112.64.71.131] ImportError: No module named extras
项目结构
qianshan
├── config.ini
├── extraModules.py
├── extras.py
├── __init__.py
├── qianshan.wsgi
├── static
├── templates
├── test.py
└── venv
init.py代码
from flask import Flask
from flask import render_template
import extraModules
import extras#如果没有这句无报错正常运行,只有一些静态资源没拉到,可能是其他问题
import ConfigParser
import codecs
import logging

logging.basicConfig(filename='qianshan.log', level=logging.INFO)
logging.info('Started')

app = Flask(__name__)

logging.info('App established')

@app.route("/")
def index():
return render_template('index.html')
extras.py是实际我想要导入的模块,里面有两个我需要的类;extraModules是测试模块,import extraModules是成功的,apache日志的第一行也打出来了;他们的代码分别如下:
# Filename : extras.py

class Block:
def setNo(self, no):
self.no = int(no)
def getNo(self):
return self.no
def setName(self, name):
self.name = name
def getName(self):
return self.name
def setPriority(self, priority):
self.priority = int(priority)
def getPriority(self):
return self.priority
def setHotKeyAsc(self, hotKeyAsc):
self.hotKeyAsc = hotKeyAsc
def getHotKeyAsc(self):
return self.hotKeyAsc
def setElement(self, equation):
s = equation.split(':')
if(s[0] == 'no'):
self.setNo(s[1])
elif(s[0] == 'name'):
self.setName(s[1])
elif(s[0] == 'priority'):
self.setPriority(s[1])
elif(s[0] == 'hot_key_asc'):
self.setHotKeyAsc(s[1])

class Website:
def setNo(self, no):
self.no = int(no)
def getNo(self):
return self.no
def setName(self, name):
self.name = name
def getName(self):
return self.name
def setUrl(self, url):
self.url = url
def getUrl(self):
return self.url
def setIcon(self, icon):
self.icon = icon
def getIcon(self):
return self.icon
def setBlockNo(self, blockNo):
self.blockNo = int(blockNo)
def setPriority(self, priority):
self.priority = int(priority)
def getPriority(self):
return self.priority
def setHotKeyAsc(self, hotKeyAsc):
self.hotKeyAsc = hotKeyAsc
def getHotKeyAsc(self):
return self.hotKeyAsc
def setElement(self, equation):
s = equation.split(':')
if(s[0] == 'no'):
self.setNo(s[1])
elif(s[0] == 'name'):
self.setName(s[1])
elif(s[0] == 'url'):
self.setUrl(s[1])
elif(s[0] == 'icon'):
self.setIcon(s[1])
elif(s[0] == 'priority'):
self.setPriority(s[1])
elif(s[0] == 'hot_key_asc'):
self.setHotKeyAsc(s[1])

if __name__ == '__main__':
block = Block()
website = Website()
extraModules.py代码如下:
# Filename : extraModules.py
print 'hello world'
其他背景信息:
项目部署在digital ocean的ubuntu12.x主机上,python版本2.7.3.

还请指导下,是不是extras.py有什么地方大意了,小弟新学python不久,请多敲打点拨

谢谢1L和2L前辈的指点啊!白天一直在上课,以下为1月7日晚更新,我把wsgi以及virtual host的配置也发一下,wsgi中是有配置/var/www/qianshan/为sys.path的。

qianshan.wsgi如下:
#!/usr/bin/python
activate_this = '/var/www/qianshan/venv/bin/activate_this.py'
execfile(activate_this, dict(__file__=activate_this))

import sys
import logging

logging.basicConfig(stream=sys.stderr)
sys.path.insert(0,'/var/www/qianshan/')
sys.path.insert(1,'/var/www/')

from qianshan import app as application
application.secret_key = 'Add your secret key'
Virtual Host配置:
<VirtualHost *:80>
ServerName qianshan.co
ServerAdmin spark@qianshan.co
WSGIScriptAlias / /var/www/qianshan/qianshan.wsgi
<Directory /var/www/qianshan/>
Order allow,deny
Allow from all
</Directory>
Alias /static /var/www/qianshan/static
<Directory /var/www/qianshan/static/>
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
我会按照1L和2L的方法试试,如果不行再在这里说
 
 
问题解决如下:
 
1.首先确认是文件的权限问题。和import的语法无关。
下图中可以看到目前项目根目录下各个文件的权限,otherModules(就是之前的extras)对root所在的用户组没有读权限。
-rwx------ 1 root root 9091 Jan  3 09:27 config.ini
-rwxr--r-- 1 root root 404 Jan 7 22:58 __init__.py
-rwx------ 1 root root 2316 Jan 7 23:07 otherModules.py
-rwxr--r-- 1 root root 360 Jan 5 23:34 qianshan.wsgi
drwxr-xr-x 2 root root 4096 Jan 3 09:08 static
drwxr-xr-x 2 root root 4096 Jan 3 08:51 templates
-rw-r--r-- 1 root root 262 Jan 7 23:05 testModule.py
-rwx------ 1 root root 1716 Jan 3 09:36 test.py
drwxr-xr-x 6 root root 4096 Jan 3 08:05 venv
chmod调整权限后,权限如下,项目可以正常访问,不再报错
-rwxr--r-- 1 root root 9091 Jan  3 09:27 config.ini
-rwxr--r-- 1 root root 404 Jan 7 22:58 __init__.py
-rwxr--r-- 1 root root 2316 Jan 7 23:07 otherModules.py
-rwxr--r-- 1 root root 360 Jan 5 23:34 qianshan.wsgi
drwxrwxr-x 2 root root 4096 Jan 3 09:08 static
drwxrwxr-x 2 root root 4096 Jan 3 08:51 templates
-rw-r--r-- 1 root root 262 Jan 7 23:05 testModule.py
-rwxr--r-- 1 root root 1716 Jan 3 09:36 test.py
drwxr-xr-x 6 root root 4096 Jan 3 08:05 venv
大体过程就这样!
原文地址:分享原文

服务器中文乱码

运维技术采菊篱下 回复了问题 • 2 人关注 • 1 个回复 • 1320 次浏览 • 2015-09-28 19:52 • 来自相关话题

php不重新编译添加模块

编程语言采菊篱下 发表了文章 • 0 个评论 • 1231 次浏览 • 2015-09-27 23:58 • 来自相关话题

php如何使用第三方软件

本例是: php(mysql_connect()函数)使用mysql(第三方软件).




观察上图,php能使用大量的第三方非php库(典型性是C语言写库), 为了达到此目的,你必须具备两个条件:条件I. 安装第三方库(软件)
条件II. 安装了该软件的php扩展如果只是安装mysql,满足条件I,但是条件II不满足, 为了满足条件二, 我们需要了解php安装扩展的知识.

安装php, 大的方面还可以分为两种方式:方式1. 将扩展编译到php
方式2. 将扩展单独编译成动态连接库so文件

方式1的优点是运行速度快,但是为了一个扩展需要重新安装整个php
方式2灵活,但是运行速度稍慢.
windows平台下的php程序员大多只熟悉方式2,因为方式2是windows下安装Php扩展的唯一方式.之前如果安装了php, 如果没有删除php源码目录,重新进入该目录, 那么此时重新编译运行将采用增量方式,实际上比方式2还更方便些,永远的三步曲:./configure --prefix=/usr/local/php --with-mysql
make
make install有人质疑:
我安装mysql sdk,./configure命令一个–with-mysql就知道我安装的目录,还是有点神奇,难道他全硬盘搜索.h文件? 不是, 如果你用yum方式安装sdk,那么LD_LIBRARY_PATH系统变量就指示了该sdk相关信息 ,如果你使用源码(tar)安装mysql sdk,你的–with-mysql参数不得不像这样: –with-mysql=/your_mysql_sdk_dir/ 来指定了。
 
方式2:
以添加ftp模块为例子:进入源码目录
#cd php-5.2.8/ext/ftp
运行phpize configure
#/usr/local/php/bin/phpize
编译,指定php-config,留意这里的php-config,不是php.ini
#./configure --with-php-config='/usr/local/php/bin/php-config'
#上面可以添加--enable-ftp,也可以不添加
编译安装
(留意:假如之前有过添加其他模块肯定 要先 make clean ,不然 编译报错。)
#make && make install
生成一个目录来存放扩展的模块
#mkdir /usr/local/php/etc/php/ext
复制ftp.so到模块目次
#cp /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/ftp.so /usr/local/php/etc/ext/
编辑 php.ini文件,指定PHP到哪个目次读模块
#vi /usr/local/php/etc/php.ini
#extension_dir="/usr/local/php/etc/ext"
Load模块
#extension=ftp.so
#保存退出

重启apache,或者其他web服务器
再用/usr/local/php/bin/php -m|grep ftp #验证是否有ftp.so 查看全部


php如何使用第三方软件


本例是: php(mysql_connect()函数)使用mysql(第三方软件).
pload.png

观察上图,php能使用大量的第三方非php库(典型性是C语言写库), 为了达到此目的,你必须具备两个条件:
条件I. 安装第三方库(软件) 
条件II. 安装了该软件的php扩展
如果只是安装mysql,满足条件I,但是条件II不满足, 为了满足条件二, 我们需要了解php安装扩展的知识.

安装php, 大的方面还可以分为两种方式:
方式1. 将扩展编译到php 
方式2. 将扩展单独编译成动态连接库so文件

方式1的优点是运行速度快,但是为了一个扩展需要重新安装整个php
方式2灵活,但是运行速度稍慢.
windows平台下的php程序员大多只熟悉方式2,因为方式2是windows下安装Php扩展的唯一方式.
之前如果安装了php, 如果没有删除php源码目录,重新进入该目录, 那么此时重新编译运行将采用增量方式,实际上比方式2还更方便些,永远的三步曲:
./configure --prefix=/usr/local/php --with-mysql 
make
make install
有人质疑:
我安装mysql sdk,./configure命令一个–with-mysql就知道我安装的目录,还是有点神奇,难道他全硬盘搜索.h文件? 不是, 如果你用yum方式安装sdk,那么LD_LIBRARY_PATH系统变量就指示了该sdk相关信息 ,如果你使用源码(tar)安装mysql sdk,你的–with-mysql参数不得不像这样: –with-mysql=/your_mysql_sdk_dir/ 来指定了。
 
方式2:
以添加ftp模块为例子:
进入源码目录
#cd php-5.2.8/ext/ftp
运行phpize configure
#/usr/local/php/bin/phpize
编译,指定php-config,留意这里的php-config,不是php.ini
#./configure --with-php-config='/usr/local/php/bin/php-config'
#上面可以添加--enable-ftp,也可以不添加
编译安装
(留意:假如之前有过添加其他模块肯定 要先 make clean ,不然 编译报错。)
#make && make install
生成一个目录来存放扩展的模块
#mkdir /usr/local/php/etc/php/ext
复制ftp.so到模块目次
#cp /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/ftp.so /usr/local/php/etc/ext/
编辑 php.ini文件,指定PHP到哪个目次读模块
#vi /usr/local/php/etc/php.ini
#extension_dir="/usr/local/php/etc/ext"
Load模块
#extension=ftp.so
#保存退出

重启apache,或者其他web服务器
再用/usr/local/php/bin/php -m|grep ftp #验证是否有ftp.so