我的编程空间,编程开发者的网络收藏夹
学习永远不晚

运维DBA要不要学python

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

运维DBA要不要学python

 

我个人认为是:要

 

现在python在运维数据库的工作中主要用在

1、编写一些运维脚本

2、编写运维管理平台

3、研究互联网大厂的运维脚本/工具并应有

 

特别是运维开源数据库的时候,第三点特别重要,例如MongoDB的zabbix监控数据库脚本就是用老外用python写的,如果要改一下里面的指标

肯定要用到python

一些互联网大厂开源的数据库脚本和工具,例如mysql相关工具,基本都是用python写的,这些工具/轮子我们肯定会用到

所以python是如此重要,当然用shell也可以完成第一点,如果强硬用python来写也只是用python来调用一下某些shell命令

但是,既然要学python,用python,做一个pythoner,那么最好所有工作都用python,有些人不这么认为,某些任务,shell可以做的python做不了

python一定要调用shell命令来做,这个是的,既然是调用shell命令为何不直接用shell

但是我个人觉得shell有个最大的缺点:格式化

shell几乎是没有格式的,只有简单的缩进,也没有专用的shell编辑器,那么,当你写了几百行代码的时候,如果没有很好的缩进习惯,那么review你的shell脚本

的那个人简直就是灾难,也由于没有专用的shell编辑器,编写shell的时候很容易出错,也不好调试

 

用python就没有这些问题,python可以用pycharm(本人觉得除了pycharm其他工具都不行)或者其他工具,python有严格的格式化,编辑器也非常强大

pdb,ipdb,print调试手段手到擒来

 

我记得之前有个招S银行技术部的招聘信息,其中有一条

必须会写shell,并且有写过单个脚本超过10000行shell代码的经验

当时觉得这个要求非常蛋疼,能在单个脚本写超过10000行shell代码的可能是高人也可能是SB,反正觉得招S银行的技术也好不到哪里好

据我所知,他们的mysql运维也是外包给某数据库服务公司,反正大部分都是外包,核心技术应该比较一般

不过,用python不是说完全不用学shell,毕竟python也是要调用shell命令的,不会shell你怎么知道怎么调用shell命令去完成某些任务

只不过不需要学习shell的流程控制语句之类的复杂语法已而

 

 

 

最后,还有一个语言,go语言

go作为互联网界的C/C++,虽然发展历史不长,但是最近几年确实比较火,go虽然是静态语言,也是带GC功能的

因为需要GC,所以go语言不适合做

1、系统编程:系统编程依然是C/C++做主导,由于GC的关系,性能比不上C/C++

2、大数据:依然是JAVA的天下,当时hadoop诞生的时候,go语言还没出生,所以大数据领域还是无法取代JAVA

3、电商:依然是JAVA的天下,JAVA有最成熟的解决方案,阿里巴巴的业务大量使用JAVA就是一个例子

 

go语言适合做

1、云计算:在云计算领域,go语言没有对手,go语言一般用于非cpu密集型业务,cdn,对象存储,docker,consul,k8s

 

其实性能上,go语言应该是比JAVA逊色不少,发展历史没有JAVA长,GC功能没有JAVA的完善

 

至于在运维领域,其实go语言的性能比python是要强,毕竟是静态语言,而且可以利用多核优势,没有python的GIL锁问题

但是在运维领域,更注重的是运维生态,而不是性能,我们开发的运维工具和运管平台其实都不需要很高性能

如果没有运维生态支持,运维将会非常难做,例如,现在每种数据库基本都有python驱动(mongodb,DB2,oracle,mssql,mysql,pgsql,sqlite等等),

spark编写作业也可以用python来编写,openstack本来用python来开发,有很完善的python API,kvm管理也有很完善的python API,

Linux内置python,Windows安装python也比较简单

python有相应的库可以编写Windows服务,国内公有云厂商基本都有python API等等,几乎每种工具、系统、软件都支持python

 

而这种运维生态,go语言是没有的,原因是go语言是2009年诞生,到现在才10年时间,而python到现在已经有30年历史

所以python才会有这种运维生态,所以才会有每种工具、系统、软件都支持python

而且目前互联网大厂用go语言来写的开源数据库运维工具和脚本非常少

当然,如果对python有几年经验并且很扎实了,那么可以用空余时间学学go语言

还有一个提醒:据我所知,go语言最流行的web框架beego问题比较多,没有python的django框架那么完善

如果要用go语言来开发运维管理平台,要注意这个坑

 

 

最后总结一句:对于运维或DB运维,个人觉得真没有必要学go语言,毕竟go语言是静态语言,门槛相对比较高,而且go语言没有运维生态

 

目前本人负责运维:MongoDB,MSSQL,MySQL,PGSQL

用到的语言有:JavaScript,SQL,Python,简单的command bat,bash shell

 

 

如有不对的地方,欢迎大家拍砖o(∩_∩)o 

本文版权归作者所有,未经作者同意不得转载。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

运维DBA要不要学python

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

运维DBA要不要学python

我个人认为是:要 现在python在运维数据库的工作中主要用在1、编写一些运维脚本2、编写运维管理平台3、研究互联网大厂的运维脚本/工具并应有 特别是运维开源数据库的时候,第三点特别重要,例如MongoDB的zabbix监控数据库脚本就是用
2023-01-31

运维要不要学golang吗

运维不要学golang,其原因是:1、golang主要被用于开发高性能和并发性能要求较高的应用程序;2、运维工程师通常使用的工具和脚本语言已经能够满足大部分的管理和维护需求;3、学习golang需要一定的编程基础和经验;4、运维工程师的主要
2023-07-17

运维的我要学开发--Python(3)

本文均来自Python Cookbook,本博文励志将Cookbook中的string部位,文件,面向对象编程部分完成,本系列博文陆续还会介绍flask框架,每篇博文都以一个个小例子展示。#-*- coding: utf-8 -*-'''
2023-01-31

运维人员是否需要学习Golang?

标题:运维人员是否需要学习Golang?在当今互联网快速发展的时代,运维人员的工作范围和技术要求也在不断变化和升级。传统的运维工作已经不能满足当前复杂系统的需求,而语言选择也成为了关键因素之一。Golang(Go语言)作为一种新兴的编程语
运维人员是否需要学习Golang?
2024-03-13

linux运维学习路线,linux运维需要掌握什么知识?

做为一名运维工程师需要什么样的技能及素质呢,首先说说技能吧,如大家上面所看到,运维是一个集多IT工种技能与一身的岗位,对系统->网络 ->存储->协议->需求->开发->测试->安全等各环节都需要了解一些。但对于某些环节需熟悉甚至精通,如系
2023-06-05

Linux需要会什么技术?Linux运维入门学习

  技术的迅速发展使Linux越来越受到关注。许多公司正在从Windows服务器转型到Linux服务器,并且对Linux云计算运维工程师的需求逐渐增加。这吸引了许多想要进入it互联网的朋友们转而学习Linux技术。但是Linux运维需要掌握
2023-06-05

云服务器需要运维吗

云服务器是一种虚拟的资源池,它需要运维。以下是一些常见的云服务器运维方面和所需的技术:数据备份:在云服务器系统中,数据备份是至关重要的。备份的数据可以保存在本地或云端,以便于恢复和灾难恢复。备份还可以防止重要数据的丢失和损坏。自动化部署和维护:云服务器通常会自动化部署和更新。这意味着服务器可能会发生故障,因此需要定期更新服务器的软件和设置才能保持最佳状态。安全性:对于某些服务,如在线商店
2023-10-26

Python自学要点!

1.python基础语法要扎实。2.多实际动手练习,多练习题,比如Python处理文件,统计文件里的字符数,打印前十。3.熟练运用python周边库。  Web:(flask、Django)  爬虫:  (request、pyquery) 
2023-01-30

为什么要花钱学 Python,自学不好吗

买了这么多课程,有哪一门是你从头到尾听完,并且能将知识点学以致用的?如果你想成为一名相对优秀的程序员,建议你读完这篇文章,如果愿意可以分享给你的朋友。2018过去的一年,对大多数互联网人来说,2018自己过得并不是很开心。不管是老板还是员工
2023-01-31

Python学习摘要

PyCharm 的激活方式:直接打开pycharm,选License server激活,输入:http://idea.imsxm.comTesseract-OCR 使用  修改pytesseract.py原文件tesseract_cmd =
2023-01-31

Golang对运维工作的重要性

Golang是一种开源的静态类型编程语言,由谷歌开发,旨在解决软件开发中的实际问题。近年来,Golang在运维工作中的重要性日益凸显。本文将探讨Golang在运维工作中的应用价值,并结合具体的代码示例加以说明。首先,Golang具有并发编
Golang对运维工作的重要性
2024-03-13

软考报名要不要什么学历

  软考报名对学历没有要求,凡遵守中华人民共和国宪法和各项法律,恪守职业道德,具有一定计算机技术应用能力的人员,均可根据本人情况,报名参加软考相应专业类别、级别的考试。  软考报名不设学历与资历条件、年龄以及专业等要求限制,只要达到相应的技术水平就可以报考,考生可根据自己的技术水平选择软考合适的级别与资格进行报考。  
软考报名要不要什么学历
2024-04-18

报名软考要不要什么学历

  软考报名对学历没有要求,凡遵守中华人民共和国宪法和各项法律,恪守职业道德,具有一定计算机技术应用能力的人员,均可根据本人情况,报名参加软考相应专业类别、级别的考试。  软考报名不设学历与资历条件、年龄以及专业等要求限制,只要达到相应的技术水平就可以报考,考生可根据自己的技术水平选择软考合适的级别与资格进行报考。  
报名软考要不要什么学历
2024-04-18

想学运维,想学python,想踏入IT圈

622465188此群适合想学python新手,并有向于python开发方向想学linux运维云计算新手,并有向于linux运维,自动化运维方向我能做的,如果你想踏入这个IT圈子,给你一些建议,学的好刚毕业一万,不好也有六七千八,因为这个行
2023-01-31

软考初级报名要不要什么学历

  软考初级报名对学历没有要求,凡遵守中华人民共和国宪法和各项法律,恪守职业道德,具有一定计算机技术应用能力的人员,均可根据本人情况,报名参加软考相应专业类别、级别的考试。  软考初级报名不设学历与资历条件、年龄以及专业等要求限制,只要达到相应的技术水平就可以报考,考生可根据自己的技术水平选择软考合适的级别与资格进行报
软考初级报名要不要什么学历
2024-04-18

软考高级报名要不要什么学历

  软考高级报名对学历没有要求,凡遵守中华人民共和国宪法和各项法律,恪守职业道德,具有一定计算机技术应用能力的人员,均可根据本人情况,报名参加软考相应专业类别、级别的考试。  软考高级报名不设学历与资历条件、年龄以及专业等要求限制,只要达到相应的技术水平就可以报考,考生可根据自己的技术水平选择软考合适的级别与资格进行报
软考高级报名要不要什么学历
2024-04-18

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录