SQL入门有一本经常提起的书《SQL in 10minutes》这本能够看看。常年amazon销量前列。或者动物社的,learning SQL,也是很好的。mysql
你须要在实际操做中累积经验,由于任何非实际项目你没法真实碰触到实际数据库结构,学习用的都很是简单,不会遇到复杂状况,而SQL使用的水平之一便是写出高效的SQL。linux
条条大路通罗马,在SQL更是如此,有时候你须要用不少union才能解决问题,别人一个select就能解决,这主要就是经验。redis
这一块是没法经过教与学了解的,没办法告诉你,这个状况用这个,那个状况用那个,只有在真实战场拼杀,才会切身体会到。sql
1. 在学习新的东西的时候,咱们至少从三个问题开始。What?why?how?shell
2. 学习须要坚持,若是还没准备好坚持半年比较枯燥的MySQL之旅,那么就别开始。数据库
3. 学习东西不在多,在精,市面上有很是多的MySQL教程,不要瞎学,今天这里学一点,明天那里学一点,这样你学的都只是知识点,没法造成一个知识面,知识网络。编程
4. 在学习过程当中充满好奇,使用google进行问题搜索,千万不要使用度娘了,质量不高。至于怎么用Google,请自行搜索。vim
5. 学习的目的在于使用,所以,不要仅仅看书,看一遍,看两遍,你可能仍是没什么感受。所以学习一开始,就要动手练习,把资料上的状况,模拟一下。windows
6. 请不要在windows上安装mysql进行学习,由于工做中都是linux系统。咱们须要从一开始就是实战,就是生产环境。缓存
7. 保持好心态,一步一个脚印的前进。
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系统,每每从设计开始。
6. 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%的问题了,你就再也不是新手了,你是一只合格的老鸟。
另外若是你想更好的提高你的编程能力,学好C语言C++编程!弯道超车,快人一步!笔者这里或许能够帮到你~
欢迎转行和学习编程的伙伴,利用更多的资料学习成长比本身琢磨更快哦!
免费学习资料: