
数据库运维的变革,经历从手工造到脚本化、系统化、平台化、智能化的转变,逐步实现DBA对数据库的规范化、自动化、自助化、可视化、智能化、服务化管理,从而保障数据库的安全、稳定、高效运行。
MySQL则是目前最流行的关系型数据库,网上的学习资料也十分充足,这是一件好事,但是但小课堂依然推荐一定要看一看 《MySQL DBA工作笔记》 这本书
本书是根据ACE,腾讯云TVP,资深DBA,一线数据库专家多年运维经验凝聚成简,自已多年工作历程,点滴积累,从理论到实践,从开发规范视角到运维基本 *** 作,从业务需求到架构优化,全面阐述如何使用和运维好MySQL数据库,此书必将使你受益良多。
此书是 全面理解新时代DBA技术转型思路和运维心得 的最佳选择,是 透彻解析MySQL运维管理、架构优化和运维开发 的指路明灯;话不多说,跟着小课堂一起看一下!!!
第1章MySQL发展和技术选型
第2章理解MySQL体系结构
第3章MySQL基础运维面面观
第4章SQL开发规范和基础
第5章MySQL运维管理实践
第6章MySQL查询优化
第7章MySQL事务和锁
第8章MySQL集群和高可用设计
第9章MySQL性能测试
第10章基于业务的数据库架构设计
第11章运维开发基础
第12章自动化运维架构设计和规划
第13章MySQL运维基础架构设计
第14章MySQL运维管理模块设计
第15章运维自助化服务
MySQL作为现在最火的数据库,火爆程度不用我们来说,小课堂相信,这本来自一线数据库专家的 《MySQL DBA工作笔记》 一定能给大家带来巨大的收获,也能进一步推进MySQL的发展。
没接触过数据库需要1到3个月学会mes运维。
1、自己在windows和linux上安装了mysql,自学linux的基础知识,学习mysql的最基础的知识,即怎么写sql,存储过程,表的设计等,从0到熟悉大概花了3个月,推荐《mysql入门很简单》。
2、系统地较为深入地学习mysql的sql优化,备份和恢复,参数优化,架构优化,硬件层面的优化,高可用方案,复制技术等等,这段时间你不一定能实际接触到这些,就像我当初那样,肯定没什么公司招一个小白。
我选择自己看书,推荐《高性能mysql》,里面所有的章节都需要看一遍,以现在的水平肯定看不懂,但需要知道大概怎么回事,为后续的找mysql初级dba的工作打一个铺垫,这个过程大概也需要3个月。
先学习至少一个能运行数据库的主机环境(如linux)把系统方面的东西都搞明白,然后再学习oracle数据库,体系结构、sqlPL/sql、调优等,然后会搭建各种高可用的数据库服务例如dataguardrac集群中的dataguard等
第一章编程的时间和空间11编程的本质3编程的本质是思考4创造世界的乐趣4快速提高的性能改变了社会5以不变应万变8摩尔定律的局限9社会变化与编程1012未来预测13科学的未来预测14IT未来预测14极限未来预测16从价格看未来16从性能看未来17从容量看未来18从带宽看未来19小结20第二章编程语言的过去、现在和未来21编程语言的世界23被历史埋没的先驱25编程语言的历史26编程语言的进化方向30未来的编程语言3220年后的编程语言34学生们的想象3422DSL(特定领域语言)36外部DSL37内部DSL38DSL的优势39DSL的定义39适合内部DSL的语言40外部DSL实例42DSL设计的构成要素43Sinatra46小结4723元编程48Meta,Reflection48类对象51类的 *** 作52Lisp53数据和程序54Lisp程序56宏56宏的功与过57元编程的可能性与危险性59小结6024内存管理61看似无限的内存61GC的三种基本方式62术语定义62标记清除方式63复制收集方式64引用计数方式65引用计数方式的缺点65进一步改良的应用方式66分代回收66对来自老生代的引用进行记录67增量回收68并行回收69GC大统一理论6925异常处理71“一定没问题的”71用特殊返回值表示错误72容易忽略错误处理72Ruby中的异常处理73产生异常74更高级的异常处理75Ruby中的后处理保证76其他语言中的异常处理77Java的检查型异常77Icon的异常和真假值78Eiffel的DesignbyContract80异常与错误值80小结8126闭包82函数对象82高阶函数83用函数参数提高通用性84函数指针的局限85作用域:变量可见范围87生存周期:变量的存在范围88闭包与面向对象89Ruby的函数对象89Ruby与JavaScript的区别90Lisp-1与Lisp-291第三章编程语言的新潮流31语言的设计97客户端与服务器端97向服务器端华丽转身98在服务器端获得成功的四大理由99客户端的JavaScript100性能显著提升101服务器端的Ruby102RubyonRails带来的飞跃102服务器端的Go103静态与动态104动态运行模式105何谓类型105静态类型的优点106动态类型的优点106有鸭子样的就是鸭子107StructuralSubtyping108小结10832Go109New(新的)109(实验性的)109Concurrent(并发的)110Garbage-collected(带垃圾回收的)110Systems(系统)111Go的创造者们111HelloWorld112Go的控制结构113类型声明116无继承式面向对象118多值与多重赋值120并发编程122小结12433Dart126为什么要推出Dart126Dart的设计目标129代码示例130Dart的特征132基于类的对象系统132非强制性静态类型133Dart的未来13434135最普及的语言135被误解最多的语言135显著高速化的语言136对JavaScript的不满138138安装方法139声明和作用域139分号和代码块141省略记法142字符串143数组和循环143类145小结14635Lua148示例程序149数据类型149函数150表150元表151方法调用的实现153基于原型编程155和Ruby的比较(语言篇)157嵌入式语言Lua157和Ruby的比较(实现篇)158嵌入式Ruby159第四章云计算时代的编程41可扩展性163信息的尺度感163大量数据的查找164二分法查找165散列表167布隆过滤器169一台计算机的极限170DHT(分布式散列表)171Roma172MapRece173小结17442C10K问题175何为C10K问题175C10K问题所引发的“想当然”177使用epoll功能180使用libev框架181使用183小结18543HashFold186HashFold库的实现(Level1)187运用多核的必要性190目前的Ruby实现所存在的问题191通过进程来实现HashFold(Level2)191抖动193运用进程池的HashFold(Level3)194小结19744进程间通信198进程与线程198同一台计算机上的进程间通信199TCPIP协议201用C语言进行套接字编程202用Ruby进行套接字编程204Ruby的套接字功能205用Ruby实现网络服务器208小结20945Rack与Unicorn210Rack中间件211应用程序服务器的问题212Unicorn的架构215Unicorn的解决方案215性能219策略220小结221第五章支撑大数据的数据存储技术51键-值存储225Hash类225DBM类226数据库的ACID特性226CAP原理227CAP解决方案——BASE228不能舍弃可用性229大规模环境下的键-值存储230访问键-值存储230键-值存储的节点处理231存储器232写入和读取233节点追加233故障应对233终止处理235其他机制235性能与应用实例236小结23652NoSQL237RDB的极限237NoSQL数据库的解决方案238形形色色的NoSQL数据库239面向文档数据库240MongoDB的安装241启动数据库服务器243MongoDB的数据库结构244数据的插入和查询244用JavaScript进行查询245高级查询246数据的更新和删除249乐观并发控制25053用Ruby来 *** 作MongoDB251使用Ruby驱动251对数据库进行 *** 作253数据的插入253数据的查询253高级查询254find方法的选项256原子 *** 作257259ODMapper26054SQL数据库的反击264“云”的定义264SQL数据库的极限264存储引擎Spider265SQL数据库之父的反驳265SQL数据库VoltDB268VoltDB的架构269VoltDB中的编程270HelloVoltDB!271性能测试273小结27555memcached和它的伙伴们276用于高速访问的缓存276memcached277示例程序278对memcached的不满279memcached替代服务器280另一种键-值存储Redis282Redis的数据类型284Redis的命令与示例285小结289第六章多核时代的编程61摩尔定律293呈几何级数增长293摩尔定律的内涵294摩尔定律的结果295摩尔定律所带来的可能性296为了提高性能297摩尔定律的极限302超越极限303不再有免费的午餐30462UNIX管道305管道编程306多核时代的管道308xargs——另一种运用核心的方式309注意瓶颈311阿姆达尔定律311多核编译312ache313dist313编译性能测试314小结31563非阻塞I/O316何为非阻塞IO316使用read(2)的方法317边沿触发与电平触发319使用read(2)select的方法319使用readO_NONBLOCK标志321Ruby的非阻塞IO322使用aio_read的方法32364nodejs330减负330拖延331委派332非阻塞编程333nodejs框架333事件驱动编程334事件循环的利弊335nodejs编程335nodejs网络编程337nodejs回调风格339nodejs的优越性340与Rev34165ZeroMQ342多CPU的必要性342阿姆达尔定律343多CPU的运用方法343进程间通信345管道345SysVIPC346套接字347UNIX套接字349ZeroMQ349ZeroMQ的连接模型350ZeroMQ的安装352ZeroMQ示例程序352小结354版权声明356
云运维涉及的方面比较广,基础知识仍然是必不可少:Linux基础,基本linux命令的使用,Shell脚本编程,Linux *** 作系统知识(Ubuntu,CentOS系统等)。
了解完基础知识后,可以给自己确定下方向:
1、大数据方向: 涉及Hadoop(hdfs,yarn等),spark,hbase,hive,storm等知识
2、虚拟化技术:openstack,kvm,nova,docker,vmware,xen等
3、应用:mysql,redis,memcached,sqlserver
4、对目前的云提供商的业务的了解:阿里云,腾讯云,京东云,金山云,AWS等
5、脚本开发(DevOps必备):python,ruby
6、比较常用的运维工具:jenkins,chef,puppet,ansible等
公司系统就用了很多种数据库MySQL、SQL sever、Oracle、MariaDB,基础架构使用大厂云的IAAS平台,但是数据库的运维管理需要自己做。我们去年弄了一套远光的YGdata,运维方便了很多。提供统一RDS支撑平台,即开即用、性能卓越,运行比较稳定,没有出现过故障,运维团队整体专业性都能大大提高了,给领导的各类报告也特别容易,而且好看多了。
推荐几本学习Linux的书籍供参考:
一、《快乐的Linux命令行》
这本书介绍如何生存在 Linux 命令行的世界。不像一些书籍仅仅涉及一个程序,比如像shell 程序, bash。这本书将试着向你传授如何与命令行界面友好相处。它是怎样工作的?它能做什么?使用它的最好方法是什么?
正如书中所说的“就像有位老师在你身边,指导你学习”,这本书的特点是语言简洁流畅,即使是英文版,看起来也不费劲(目前已有中文版)。涵盖了大部分命令行工具和Shell编程。最主要的是它基于 CC 协议共享,任何人都可以免费下载。
二、《Linux命令行与shell脚本编程大全》
这是一本非常适合Linux小白的入门教程,内容通俗易懂、深入浅出,除了日常工作中用的基础命令之外,像正则表达式、sed、awk 这样的高级命令也有介绍,书上还配有大量的实例,如果你想精通 shell 编程,那么这本书就是为你准备的。也是有志于从事系统运维开发的朋友必备读品,总之,只要你能跟着这本教程学完,使用 Linux 就轻车熟路了。
三、鸟哥的Linux私房菜 : 基础学习篇
如果你想要学习Linux,强烈建议通过《鸟哥的Linux私房菜》这套书籍去学习,浅显易懂,小编就是通过这套书籍学会Linux的。
四、Linux UNIX系统编程手册 套装上下册
《linux/unix系统编程手册(上、下册)》是介绍linux与unix编程接口的权威著作。linux编程资深专家michael kerrisk在书中详细描述了linux/unix系统编程所涉及的系统调用和库函数,并辅之以全面而清晰的代码示例。
《linux/unix系统编程手册(上、下册)》涵盖了逾500个系统调用及库函数,并给出逾200个程序示例,另含88张表格和115幅示意图。
学成之后从事的工作也是围绕运维进行的:
应用运维(SRE):应用运维负责线上服务的变更、服务状态监控、服务容灾和数据备份等工作,对服务进行例行排查、故障应急处理等工作,工作职责如下:设计评审、服务管理、资源管理、例行检查、预案管理、数据备份。
系统运维(SYS):负责IDC、网络、CDN和基础服务的建设(LVS、NTP、DNS);负责资产管理,服务器选型、交付和维修,工作职责如下:IDC数据中心建设、网络建设、LVS负载均衡和SNAT建设、CDN规划和建设、服务器选型、交付和维护、内核选型和OS相关维护工作、资产管理、基础服务建设。
数据库运维(DBA):数据库运维负责数据存储方案设计、数据库表设计、索引设计和SQL优化,对数据库进行变更、监控、备份、高可用设计等工作,详细的工作内容如下:设计评审、容量规划、数据备份与灾备、数据库监控、数据库安全、数据库高可用和性能优化、自动化系统建设、运维研发、运维平台、监控系统、自动化部署系统。
运维安全(SEC):运维安全负责网络、系统和业务等方面的安全加固工作,进行常规的安全扫描、渗透测试,进行安全工具和系统研发以及安全事件应急处理,工作内容如下:安全制度建立、风险评估、安全建设、安全合规、应急响应。
以上就是关于腾讯云专家经验凝聚成简,593页MySQL DBA工作笔记,透析MySQL架构全部的内容,包括:腾讯云专家经验凝聚成简,593页MySQL DBA工作笔记,透析MySQL架构、没接触过数据库需要多久学会mes运维、如何成为一名成功的数据库运维工程师等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)