我仍然很高兴遇见你。
一数据库怎么学习
新手学习数据库务必把握的知识要点
数据库的安装下载了解数据库的环境变量文件目录构造
数据库网络服务器的启动登陆与登出
数据库常用命令及语法标准
数据库基本数据类型与数据表的实际操作比如数据表的增删单表查寻多表查询等
数据库运算符和函数比如日期函数时间函数信息函数聚合函数数据加密涵数自定义函数等
数据库存储过程存储过程的调度
数据库每个存储引擎的特性
数据库事务管理的定义和应用等
数据库管理权限和用户管理等
上述知识了解之后就需要学习一下数据库的常见的函数再以后便是要学习存储过程函数触发器原理事务管理学完之后基础数据库方面就没什么难题了要是不做高級的科学研究这些专业知识就够了要想学精数据库就需要多练习试着自己建立一个含有逻辑性的合乎第三范式之上的数据库随后写SQL触发器原理存储过程view视图等最重要的便是把它们中间的逻辑弄清楚
数据库理论知识是学好数据库的基础虽然理论知识会有点枯燥但是这是学好数据库的前提如果没有理论基础学习的东西就不扎实例如数据库理论中会讲解E-R图数据库设计原则等知识如果不了解这些知识就很难独立设计一个很好的数据库及表可以将理论和实例结合在一起来学习这样效率会更高
二如何成为数据库工程师
数据库工程师一般分为开发和管理两种
1数据库开发
一般人刚接触数据库基本都是数据库开发就是写SQL代码做报表按照一定的语法完成某项逻辑任务这阶段就是按需求查询出数据即可不出逻辑错误就行了
一般这样的工作一些小公司都会直接让软件开发工程师兼岗只有那种数据需求量比较频繁的公司才会单独设立这种比较初级的数据统计岗位
抑或是给一些银行电信电力等这种大型的企业做服务外包这些企业在目前还是很需要这类数据库开发类人才的特别是刚毕业的大学实习生
随着你的技术知识的积累接触的开发任务会越来越多越来越复杂这时候你接触到的技术会越来越多从数据采集到数据加工处理再到数据分发等等都会涉及到
2数据库管理
数据库管理就是我们常说的DBA主要是从事的数据库管理工作包括数据的备份恢复故障处理语句优化性能监控等对操作系统和数据库的原理要比较了解
这个岗位对自身的技术能力要求比较高所以刚入行的除非在这一方面有比较高的造诣和研究一般的公司是不会招新人从事这份工作的
一般是数据库开发或者软件开发的转行做DBA他们使用的数据库比较多经过日积月累对数据库性能和故障处理有一定的了解当然也有其他职务转做DBA的不变的是他们都和数据库打交道比较久
3薪酬对比
在职务薪酬这一块DBA的薪酬一般是高于数据库开发的经验丰富的DBA一般人只能望其项背当然也有从删库到跑路的DBA重要的还是对一些技术原理的掌握和对故障的精准判断这些都是靠时间积累的就像一个老中医一样功力越深越吃香
4流行度
目前在国内DBA一般是Oracle和Mysql较多SQL Server的DBA也有只是相对前两个比较少这与数据库所占份额及流行度有关Oracle和Mysql在Windows和Linux环境都可以很好的兼容SQL Server在2017年之前都一直只支持自家的Windows操作系统之后才开始兼容Linux
5新手选择
新手同学在入数据这一行的启蒙数据库大多数都是SQL Server(原因应该是大学的教程是以SQL Server为平台)主要是它可视化界面比Oracle和Mysql友好
但是真正的大神还是比较喜欢命令界面毕竟命令界面的响应速度快的不是一点点而且命令界面也有助于更好的记住数据库的相关命令
6学习建议
如果你想快速上手数据库的唯一途径就是理论加实践多看书多操作那些标榜一个月从入门到精通的培训或教程实在不敢苟同真正能让人成长起来的还是工作后每天成堆的数据需求迫使不断努力进步当然这里不是否定培训价值他们是引导我们打好基础的有效途径其他的完全靠自己因为有些问题只有在工作中遇到了才知道怎么处理纸上谈兵是解决不了问题的
此外还是得有不耻下问的精神和勇气即使老师想把所有知识都传授给你但是他不知道你哪里不懂那他只能按照自己的章法去传授这样的结果就是他的任务完成了至于你懂了没他并不知道
数据库打好基础真的不难只要肯花时间去练短时间就可以掌握这些基础知识再加上实践经过时间的锤炼总会在某一方面有自己的建树