零基础如何学习MySQL?

送给新手学习的建议,请仔细阅读。

  1. 在学习新的东西的时候,我们至少从三个问题开始。What?why?how?

  2. 学习需要坚持,如果还没准备好坚持半年比较枯燥的MySQL之旅,那么就别开始。

  3. 学习东西不在多,在精,市面上有非常多的MySQL教程,不要瞎学,今天这里学一点,明天那里学一点,这样你学的都只是知识点,无法形成一个知识面,知识网络。

  4. 在学习过程中充满好奇,使用google进行问题搜索,千万不要使用度娘了,质量不高。至于怎么用Google,请自行搜索。

  5. 学习的目的在于使用,因此,不要仅仅看书,看一遍,看两遍,你可能还是没什么感觉。因此学习一开始,就要动手练习,把资料上的情况,模拟一下。

  6. 请不要在windows上安装mysql进行学习,因为工作中都是linux系统。我们需要从一开始就是实战,就是生产环境。

  7. 保持好心态,一步一个脚印的前进。

学习MySQL你需要掌握的知识点(包括不限于以下内容):

1.系统,当然windos基本的要会。然后就是Linux系统,现在做MySQL DBA的系统多数都是Linux系统,而生产环境大多又是RedHat,Centos。其他的Linux和Unix系统可以只做了解。

2.Linux基础,网络,IO,内存,磁盘,CPU。包括不限于 安装,启动过程,目录结构,远程登录,文件属性与管理,用户与用户权限,LAMP结构vim,yum等shell命令,dns,ftp,以及一些常用工具。

3.MySQL基础: MySQL安装、MySQL体系结构,SQL,MySQL管理维护。

4.数据备份与恢复,常用的引擎:MyISAM、Innodb、NDB等。

5.数据库设计优化,一个好的MySQL系统,往往从设计开始。

  1. SQL优化,参数优化,监控,安全等。

7.MySQL负载均衡,读写分离,MHA,MMM高可用架构,以及分布式架构:mycat、maxscale、galera cluster、MySQL Group Replication等。

8.mysql5.6,mysql5.7新特性,mariadb、percona分支的差异和特点。

9.MySQL JSON、MySQL memcached。

10.常见MySQL搭配的缓存系统,redis,memcached,以及NOSQL、NEWSQL。

请不要被上面繁多的知识吓到,只要坚持,每天花1-2个小时,半年时间,就可以胜任一个DBA新手了,在工作中,再慢慢积累,不断学习。沉淀1年,你几乎可以解决生产环境中99.99%的问题了,你就不再是新手了,你是一只合格的老鸟。

首先你要明白一点,一般来说,关系型数据库有三个方面的东西

1,是数据库管理,这是DBA,负责安装,调试,调优,集群等

2,是数据库使用,这是编程,包括SQL语句,触发器,存储过程等

3,是数据库设计,设计数据库表和其他实体

三者互相影响,互相包含,你所谓的对数据库感兴趣,到底是哪个方面?

DBA的部分,虽然目前是有一些商用项目使用mysql,或者mysql集群,但是看你的学历和经历,并不推荐你当一个mysql DBA,就业面市场太小,如果励志当一个DBA,建议你从MSSQL server或者oracle开始。

数据库的设计,肯定绕不开两点,一个是领域知识,比如做金融的,你要是不懂银行运作,保险公司日常,你肯定是设计不出数据库结构的,另一个是数据库原理,这个是共同的,了解如何使用范式计算数据库实体关系,数据库是否好,是有可量化的标准的,那就是范式,这和学历差不多,符合高范式的不一定很好,但是低范式基本上都不好,虽然不排除有些特例。

所以你最可能在眼前的就是数据库使用,这个里面,我建议你在学会安装以后,只看两个,SQL和触发器,而且时间分配为70%-30%,为什么不建议看存储过程,理由和DBA一样,使用场景不多,效费比不高。所以你应该很清楚,这样抽丝剥茧以后,你主要花费精力的就是SQL使用。

那么SQL如何学习?

SQL入门有一本常常提起的书《SQL in 10minutes》这本可以看看。常年amazon销量前列。或者动物社的,learning SQL,也是很好的。网站的话,W3school总是我的首要推荐。我个人偏爱辞书式教程,当然有些人喜欢精灵式教程,那样你会需要自己找。W3的好处是一直一共online测试,你可以以结果为导向进行学习。如果你在W3online测试,凭真实实力过关,那么你的基础就准备好了。培训的话建议成都朗沃教育,有12年培训经验,优秀的师资团队,还是很靠谱的。

这只是第一步,等于是你掌握了所有工具的使用,接下去你需要在实际操作中累积经验,因为任何非实际项目你无法真实碰触到实际数据库结构,学习用的都非常简单,不会遇到复杂情况,而SQL使用的水平之一即是写出高效的SQL。条条大路通罗马,在SQL更是如此,有时候你需要用很多union才能解决问题,别人一个select就能解决,这主要就是经验。这一块是无法通过教与学了解的,没办法告诉你,这个情况用这个,那个情况用那个,只有在真实战场拼杀,才会切身体会到。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值