斗争程序猿(三十八)——历史朝代大学(两)——我与数据库的故事
文/温国兵
惰性人皆有之,也算是人的一大天性。几日之前便构思好此文,怎奈每日杂事繁多,今日才提起笔,作下此文。本文谈谈我与数据库的故事。
说起和数据库结缘,还得从大一说起。大一刚開始接触C语言,每日就沉浸在无止境的代码中。在网上查资料的过程中。看到别人用C语言写了一个小型的图书操作程序,数据库採用的是SQL Server,执行出来的效果图非常炫,惊叹原来还能够这样管理数据。熟知C语言的同学肯定对文件操作不陌生,当时我们敲代码假设有静态数据,都是放在文件中的。
直到后来做的C语言课程设计。我也是一大堆文件来保存静态数据。
至此心里有了一颗小小的种子,谁知道会在后来生根发芽。
大一下期的那个暑假,開始了实验室之旅。在实验室每天都是自学,当中就接触到了SQL Server和MySQL。关于实验室的种种事情,后面还会细说。
最開始接触SQL Server,我用我那破网在网上下载数G大的数据库安装文件。后来才知道我们学校的阳光软件站里有,且下载速度达十几M每秒。
花了数天把软件下载下来以后,在百度文库找了一个安装说明文档。依照截图一步步操作。整个过程可不那么顺利,而且SQL Server非常耗用内存。好几次机器都是未响应状态,一番折腾。最终搞掂了,别提多兴奋。接着把服务启动。打开SQL Server Manageorgiament Studio,对数据库一窍不通的我连个登录都折腾半天。
进入主界面。不知该做个啥。后来在实验室老师和学长的建议下,我在W3C上開始学习SQL的基础知识。写个查询,满足指定条件的数据就呈如今眼前;用个INSERT,就能把想要的数据插入到数据库。弄个UPDATE。就能把数据更新成想要的数据;写个DELETE,就能把不须要的数据删除。
如此简单的语句就能实现当初以为非常强大的功能,不得不感叹数据库的奇妙。后来阅读师兄的项目源代码。发现数据库使用的是MySQL。于是開始折腾MySQL。
Windows下的MySQL还是比較easy安装,但就是如此简单的操作也是折腾了非常久,而且非常多数据库配置选项也不大明确。只是有了SQL Server的一些基础,学习MySQL还是相对easy。接触过这两大数据库,而且有了一点Java Web的知识。于是開始做项目。
最開始的项目是练手用的,无非就是连接数据库,然后进行增删改查。
连接数据库使用的JDBC,这个过程中也遇到非常多问题,比方驱动版本号不正确、中文出现乱码、不能正确提交数据等等。我有个习惯,就是遇到问题喜欢自己捣鼓,在万不得已的情况下不向别人提问。
进入实验室不久。由于在网上找资料,非常多链接都定向到CSDN,于是开通了CSDN博客,这是一件正确的事的開始。
大二上期開始接触Oracle。
Oracle也是一款庞大的软件,在网上把安装文件下载下来以后。依照网上的安装文档,一步步開始操作。
安装完毕后。開始使用Oracle,这个数据库软件执行起来可真够呛,2G的内存表示压力山大,执行Oracle后其它的不论什么事情就别想做了。学习Oracle先是依照前辈的博客循序渐进。从基础的SQL。到PL SQL,再到简单的优化,整个过程的学习还算顺利。不会存在非常吃力的情况。此时的我对数据库抱有极大的热情和兴趣,而且慢慢形成了以后的奋斗价值观。
大二开设了数据库相关的课程,没记错的话课程名叫做「数据库原理」。
在正式上课之前还有一点时间准备,对数据库较熟悉的我在同学面前有了优越感,非常多同学到我那里拷贝数据库安装文件。而且麻烦我为他们安装数据库。
经过数次帮忙后,对整个操作已经到了了如指掌的地步。教授数据库原理的老师十分幽默。时不时在课上爆出个冷笑话。让人捧腹大笑。由于曾经接触过数据库。所以数据库介绍、关系数据库的基本理论、基础SQL等等知识学习起来都比較轻松。大二的我非常喜欢泡图书馆,常常翻阅四楼的计算机书籍。看到两本硕大的书,一本是Abraham Silberschatz所著的《数据库系统概念》。还有一本是David M. Kroenke所著的《数据库原理》,如此厚的著作看完都要非常久,更不提创作了。我小心翼翼地用双手从书架取下。兴高採烈地捧到书桌阅读。看了一两个小时,对作者不禁有敬畏之情。这些书籍堪称经典,肯定有他的道理,想深入数据库,这些书是必读的。
在学习数据库知识的过程中,难免会遇到各种各样的问题。遇到问题后,我首先尝试自己解决。自己解决不了再參考别人的解决的方法,解决后再用自己的方式总结,再以博客的形式发表。
这种学习方式优点非常之多,读者最好还是借鉴。后来学习数据库就多了一些深入。
比方工作之后,成为了SQL Server DBA,開始看SQL 优化的知识。而且用于实践。工作的过程中还写了不少的检查性能瓶颈的T-SQL。再比方MySQL,学习了MySQL的高可用、高性能技术,比方复制技术中的主从复制、双主复制、一主多从;高可用、高性能集群方案,比方MySQL Proxy、MySQL Cluster、MySQL MHA、MySQL MMM、DRBD+Heartbeat+MySQL、LVS+Keepalived+MySQL等等;还接触到MySQL的备份与恢复,比方冷备、热备、增量备份、热拷贝、延时备份等等;还接触到MySQL的体系结构,熟悉了常常使用的存储引擎。后来还看了不少MySQL相关的书籍,阅读了部分MySQL源代码,如此博大精深的技术,深知冰冻三尺非一日之寒。还须要花非常大的功夫。再比方Oracle,接触了Linux下Oracle的安装和配置、Oracle的体系结构、Oracle的备份与恢复、DG、RAC、Oracle优化等等。期间抱着官方文档啃,看过不少Oracle大牛的书,比方盖国强、白鳝等等。
在CSDN的私信、知乎、OSC、ITPUB,常常有人在问我问题,我在帮别人解决这个问题的同一时候也得到比較大的提高。在这个过程中学会了如何高速的寻求「帮助」,如何分享自己的所思所得,如何和别人高效地沟通。还懂得了学习技术不是学习技术本身,而是技术后面的本质问题。未来从事数据库行业还有非常长的路要走,用一句「路漫漫其修远兮,吾将上下而求索」来激励自己。
写到这里已经把大学的整个数据库旅程写完了。回过头看整个旅程,还是有非常多值得思考的地方。这里仅仅给出一个思考,那就是为什么要学习和深入数据库。而且把他当做以后的职业发展方向。个人觉得是兴趣问题。至于面试官怎么想与我无关。一次面试官问我这个问题,我回答是兴趣,他说事实上非常easy,无非是为了金钱嘛。当时我仅仅能用呵呵来笑对。仅仅能说每一个人的追求不一样。
有的人为了金钱而奔波,有的人为了实现自己的价值而奋斗;有些人一生碌碌无为,有些人一生完毕了诸多丰功伟绩。
结合自身经历,对以后想从事数据库行业的学弟学妹们还是有几点建议。第一是搞明确动机,想清楚自己是否适合这个行业,不要由于做数据库薪资高就盲目地跟风。
数据库行业外表光鲜。实质苦逼,并没有想象中的那么美好。第二是掌握好的学习方法。比方前面提到的通过博文分享形成自己的知识库、向前辈取经、练习和总结并进等等。第三是遇到问题的求助方式。不要遇到问题就向别人请教,假设不经过自己的思考,那你的提升会非常的小。假设一定要求助。能够採用发帖或者跟技术大牛发邮件的形式。但请务必注意提问的方式,把遇到问题的解决办法、 什么条件下导致这种错误、出现错误的平台、对应的错误信息和代码说清楚,还须要注意邮件的格式和必需的礼节。做人做事不仅要让自己舒服。更重要的是要让别人舒服。第四是把基本功抓牢。有研究表明,非常多非常成功的企业家曾经卖过报,小时候形成的创业童子功对以后的发展起着至关关键的数据。
某一个领域的基础知识就是基本功,和童子功有着非常相似的作用。地基不牢。何以成參天大楼。
落实到实处,数据库的经典书籍一定要找来读读,还有就是越是简单的东西就越须要搞明确为什么。
第五是不要好高骛远。我在平时的求职过程中。看到非常多公司开的薪资,有了2年经验的月薪在2万以上的不在少数。别人能开那么高的薪资。肯定你做的事对得起这份工资。
薪资越高,责任也就越大。从还有一方面讲,脚踏实地才干在以后有所作为。当你有了能力,不愁薪资。
昨天在微博上看到一句话。牛B的人才不用找工作,想想不无道理。第六是找到志同道合的好友,互相学习,这样会得到非常大的提高。比方我有幸结识@林水彬。在平时他给我非常大的帮助,在此感谢!
第七是找数据库相关的工作不要气馁,不要自暴自弃。也不要埋怨上天的不公,为什么这样说呢?由于应届毕业生找数据库相关的工作还是相对困难的,一个经验的硬性指标就会把你拒之门外。
要相信凡事都是能者居之。你有能力。足够好运,而且公司也愿意培养你。那恭喜你。坚持下去,前途一片光明。假设毕业不能立即找到数据库相关工作,能够先做其它行业,以后再考虑转型。方向就在那里,总错不了。希望本文能给读者带来丁点帮助。
诗和远方永远存在。
写着惊世骇俗的诗,心系能够眺望的远方。伴着沿途的风景,独自前行。
未完待续。
Good Luck!
Robin
2014年6月1日
相关文章
- 程序猿的奋斗史(三十七)——大学断代史(一)——开篇
- 程序猿的奋斗史(三十九)——大学断代史(三)——我和知乎邂逅
- 程序猿的奋斗史(四十)——大学断代史(四)——我与博客
- 程序猿的奋斗史(四十一)——大学断代史(五)——我的娱乐方式
- 程序猿的奋斗史(四十二)——大学断代史(六)——我与图书馆
- 程序猿的奋斗史(四十三)——大学断代史(七)——在实验室的日子与我的学业
- 程序猿的奋斗史(四十四)——大学断代史(八)——大学的友谊
- 程序猿的奋斗史(四十五)——大学断代史(九)——独自南下的岁月
- 程序猿的奋斗史(四十六)——大学断代史(十)——忠告后辈——决赛
版权声明:本文博客原创文章。博客,未经同意,不得转载。
斗争程序猿(三十八)——历史朝代大学(两)——我与数据库的故事相关推荐
- 斗争程序猿(三十九)——历史朝代大学(三)——我知道几乎满足
文/温国兵 遥望2011年的某个惶惶岁月,那是我与知乎相识的日子. 排除知乎站点的内測用户,我应该算得上第一批用户. 那时知乎网还未开放注冊,仅仅能通过好友邀请注冊,我费了九牛二虎之力,申请了好几次, ...
- 斗争程序猿(四十一)——历史朝代大学(五岁以下儿童)——我的娱乐
文/温国兵 忙碌的大学生活总要有属于自己的娱乐方式.琴棋书画也好,游戏运动也罢. 上大学开通了人人网.新浪微博.腾讯微博.再到后来的微信.陌陌.来往.易信.米聊.Line.WhatsAPP,加上最開始 ...
- 三十八载,Oracle伴我同行—记我的职业成长之路
2015年7月19日 三十八载 Oracle伴我同行 --记我的职业成长之路 2015,今年是Oracle公司38周年:2015,今年我已然38岁.在Oracle庆祝38岁生日之际,仅以此文作为回 ...
- OpenCV学习笔记(三十六)——Kalman滤波做运动目标跟踪 OpenCV学习笔记(三十七)——实用函数、系统函数、宏core OpenCV学习笔记(三十八)——显示当前FPS OpenC
OpenCV学习笔记(三十六)--Kalman滤波做运动目标跟踪 kalman滤波大家都很熟悉,其基本思想就是先不考虑输入信号和观测噪声的影响,得到状态变量和输出信号的估计值,再用输出信号的估计误差加 ...
- 潘爱民:计算机程序的演进——我的程序人生三十年
本文为<新程序员004>内容,与潘爱民畅谈他的程序人生.<新程序员004>即将上市,敬请期待.从MySQL之父.MariaDB创始人Michael "Monty&qu ...
- 第五章第三十八题(十进制转换八进制)(Decimal to octal)
第五章第三十八题(十进制转换八进制)(Decimal to octal) **5.38(十进制转换为八进制)编写程序,提示用户输入一个十进制整数,然后显示对应的八进制值.在这个程序中不要使用Java的 ...
- 视频教程-三十八课时零基础matlab精通优化算法-Matlab
三十八课时零基础matlab精通优化算法 图像和算法等领域有多年研究和项目经验:指导发表科技核心期刊经验丰富:多次指导数学建模爱好者参赛. 宋星星 ¥100.00 立即订阅 扫码下载「CSDN程序员学 ...
- 游戏光枪的三十年历史
游戏光枪的三十年历史 一句话看专题:今年是FC光枪问世的三十周年纪念,让我们来说说这款周边的种种故事. 光枪和游戏的天作之合 作为游戏史上最著名的外设之一,光枪(Light gun)的历史实际上远比电 ...
- 程序员三十岁之后要考虑什么?
程序员三十岁之后要考虑什么? 周六受邀参加了触控科技CocoaChina开发者社区举办的"移动游戏人才培养和创业机会"的沙龙.其间被问到一个问题:"程序员三十岁之后该怎么 ...
- Android项目实战(三十八):2017最新 将AndroidLibrary提交到JCenter仓库(图文教程)...
Android项目实战(三十八):2017最新 将AndroidLibrary提交到JCenter仓库(图文教程) 原文:Android项目实战(三十八):2017最新 将AndroidLibrary ...
最新文章
- 电子书格式怎么在线转换为PDF格式
- Redis操作ZSet类型
- Redis和Memcache区别,优缺点对比
- picACG本地缓存目录_手机上本地存储的哪些文件、文件夹不能删?
- php后台无法登入,typecho 后台无法登陆
- oa工作流 源码_oa管理系统工作流是什么?类型、优势、功能有哪些?
- 中科大计算机竞赛夺冠,中科大斩获全国唯一特等奖,力压清华捧得华为毕昇杯...
- MFC初探 —— 捕获键盘消息
- zabbix之 qq邮件报警
- Linux常用命令参考手册02
- iOS系统玩ONS游戏的详细说明(越狱,非越狱)
- 计算机基础及photoshop应用好考吗,计算机基础及Photoshop应用考试技巧
- 2022读书感第一篇《小王子》
- 论文阅读:A Unified Span-Based Approach for Opinion Mining with Syntactic Constituents
- cad隐藏图层命令快捷键_教你学会天正CAD局部隐藏对象技巧
- 信息系统开发(JAVA)设计一个银行账户类
- DBlink 入门案例
- Java指定日期N个月后的日期
- PWM的调光基本原理
- 怎么制作app系统软件,大概需要多少钱