
1、自己在windows和linux上安装了mysql,自学linux的基础知识,学习mysql的最基础的知识,即怎么写sql,存储过程,表的设计等,从0到熟悉大概花了3个月,推荐《mysql入门很简单》。
2、系统地较为深入地学习mysql的sql优化,备份和恢复,参数优化,架构优化,硬件层面的优化,高可用方案,复制技术等等,这段时间你不一定能实际接触到这些,就像我当初那样,肯定没什么公司招一个小白。
我选择自己看书,推荐《高性能mysql》,里面所有的章节都需要看一遍,以现在的水平肯定看不懂,但需要知道大概怎么回事,为后续的找mysql初级dba的工作打一个铺垫,这个过程大概也需要3个月。
3、纸上得来终觉浅,完成以上两步,我开始准备找一份mysql相关的工作,而不是天天用着excel表格做着selectfromtable_sb这样的工作。
当然我这么猥琐的人肯定不会裸辞,该画的电路板也一样画,业余时间开始投初级mysqldba的工作,并且不间断地学习,网上各种找mysql面试的相关题目(实际上我当时完全没有任何实战经验),陆续收到一些面试,凭借之前自学的mysql知识,开始胡乱吹牛逼,先混进去再说。
你不做mysql实际相关的工作,永远也不知道自己之前认知的db知识有多幼稚。
友情提示一点,一般公司都没有专职dba的,所以面试的时候一定要自信,其实你学了这么多,虽然毫无实战经验,理论知识很大概率比面试你的人牛逼,所以各种吹,我就这样真正进入初级dba的圈子(由于这时对linux还处于cdls的水平,所以之前也根本没做过运维),这个边工作边找工作的过程又持续了2个月。
4、真正进入互联网,接触生产环境后,这是我进步最大的时候。
第一步需要将之前所学真正地应用起来,并且应用的过程中,再回头看之前的书籍,这时候需要真正去理解,而不是似是而非,一知半解。
这时再推荐《高性能mysql第三版》,全本再看一遍,这时需要全部看懂,另外还有《mysql技术内幕:innodb存储引擎》等等。
总之这段时间就需要开始关注mysql一些细节了,比如db故障处理,高可用,负载均衡等等的具体实现了。
另外,linux的知识同步也要深入去学习,至少会写shell脚本,常见的linux知识等,我在这花了1年多;
5、dba的工作一般是非常轻闲的,毕竟不是大公司,技术能力有限,该学的也学得差不多了,接触不到海量数据,高并发等比较锻炼人的场合,于是我又准备跳了。
于是来了公有云,现在每天运维万多个db实例,平均每天处理5个紧急db故障,几乎mysql会遇到的问题,感觉都遇到了,能感觉到技术实力和经验也在每天都在积累,在进步。
但是感觉还是欠缺了很多,下一步就看你选择了,是再去研究源代码,底层原理的东西多点,还是数据库运维和应用多一点,就比如业界姜承尧,何登成与叶金荣的区别。
由于我的历史原因,对c等几乎不懂,平时也用不到,所以看代码等事实际太累,于是我再去学mongodb,接了公司mongodb运维的活,算是在广度上的一个扩展,万一哪天mysql不行了呢
6、总之,对于db小白来说,最重要的一点就是,学习的过程不能断。
PS上面的方法比较野路子,适合没什么基础的童鞋,如果本来就是DBA,比如从oracle转到mysql,那么建议直接看mysql官方文档,而官方文档是db达到一定水平后必看,出问题时必查的权威文档。
“SQL(Structured Query Language)结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。同时也是数据库脚本文件的扩展名。”
来自百度百科。
不针对某个数据库,大部份的SQL语言还是通用的。搜索 SQL 就是相应的教程,慢慢学吧。
三级结构的组织形式称为数据库的体系结构或数据抽象的三个级别。这个结构是于1975年在美国ANSI/X3/SPARC(美国国家标准协会的计算机与信息处理委员会中的标准计划与需求委员会)数据库小组的报告中提出的。
1141三级数据视图
数据抽象的三个级别又称为三级数据视图,是不同层次用户(人员)从不同角度所看到的数据组织形式。
(1) 外部视图 第一层的数据组织形式是面向应用的,是应用程序员开发应用程序时所使用的数据组织形式,是应用程序员所看到的数据的逻辑结构,是用户数据视图,称为外部视图。外部视图可有多个。这一层的最大特点是以各类用户的需求为出发点,构造满足其需求的最佳逻辑结构。
(2) 全局视图 第二层的数据组织形式是面向全局应用的,是全局数据的组织形式,是数据库管理人员所看到的全体数据的逻辑组织形式,称为全局视图,全局视图仅有一个。这一层的特点是对全局应用最佳的逻辑结构形式。
(3) 存储视图 第三层的数据组织形式是面向存储的,是按照物理存储最优的策略所组织形式,是系统维护人员所看到的数据结构,称为存储视图。存储视图只有一个。这一层的特点是物理存储最佳的结构形式。
外部视图是全局视图的逻辑子集,全局视图是外部视图的逻辑汇总和综合,存储视图是全局视图的具体实现。三级视图之间的联系由二级映射实现。外部视图和全局视图之间的映射称为逻辑映射,全局视图和存储视图之间的映射称为物理映射。
1142 三级模式
三级视图是用图、表等形式描述的,具有简单、直观的优点。但是,这种形式目前还不能被计算机直接识别。为了在计算机系统中实现数据的三级组织形式,必须用计算机可以识别的语言对其进行描述。DBMS提供了这种数据描述语言(Data Description Language 简记为DDL)。我们称用DDL精确定义数据视图的程序为模式(Scheme)。与三级视图对应的是三级模式。
(1) 子模式定义外部视图的模式称外模式,也称子模式。它由对用户数据文件的逻辑结构描述以及和全局视图中文件的对应关系的描述组成,用DBMS提供的子模式DDL定义。一个子模式可以由多个用户共享,而一个用户只能使用一个子模式。
(2) 模式 定义全局视图的模式称逻辑模式,简称模式。它由对全局视图中全体数据文件的逻辑结构描述以及和存储视图中文件的对应关系的描述组成,用DBMS提供的模式DDL定义。逻辑结构的描述包括记录的型(组成记录的数据项名、类型、取值范围等),还有记录之间的联系,数据的完整性、安全保密要求等。
(3) 内模式 定义存储视图的模式称内模式,又称物理模式。它由对存储视图中全体数据文件的存储结构的描述和对存储介质参数的描述组成,用DBMS提供的内模式DDL定义。存储结构的描述包括记录值的存储方式(顺序存储、hash方法、B树结构等),索引的组织方式等。
三级模式的结构如图18所示。
三级模式所描述的仅仅是数据的组织框架,而不是数据本身。在内模式这个框架填上具体数据就构成物理数据库,它是外部存储器上真实存在的数据集合。模式框架下的数据集合是概念数据库,它仅是物理数据库的逻辑映像。子模式框架下的数据集合是用户数据库,它是概念数据库的逻辑子集。
以上就是关于数据库应该怎么学习,零基础全部的内容,包括:数据库应该怎么学习,零基础、什么是数据库的底层语言,公司说让我们自己学,但是不给资料、什么是数据库系统的体系结构等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)