使用 PostgreSQL 的 10 个技巧
前些日子,我收到一封电子邮件,询问初学者学习 PostgreSQL 的良好途径。由于看到有很多人开始使用 PostgreSQL,因而我在此处发表了我的看法,对很多人来说,这些想法可能傲慢无礼或显而易见,但对于真正的初学者来说,我相信它们会很有用。
最后,我留下了一些有趣的链接。
学习英语!
与上大学或学习计算机科学课程相比,更重要的是学习英语。如果你打算进行短期投资,却不能很好地阅读英语,那么这是一个强制性的起点。最好的计算机专业人士是能够自学的人。当你开始自学时,你会发现两点
- 互联网是最经济、快速且丰富的媒介,可以用来找到更新资料并发现新事物。
- 最好的文章、新闻网站、博客、书籍、杂志、讨论列表、IRC 频道等都以英语提供。这一类材料只有极小一部分被翻译成葡萄牙语,即使翻译,通常也稍显过时。这并不意味着没有优秀葡萄牙语材料。这意味着全世界大多数 IT 专业人士都通过英语交流。
对一切都至关重要的是找到真正的问题并尝试寻找真正的解决方案。
在我开始学习时,我的第一个数据库是关于我的唱片和黑胶盘收藏。然后我为唱片商店建立了一个数据库,由此开始。寻找对真实问题提出解决办法会让你遇到实际问题,并对你进行挑战,让你去寻找解决办法。
阅读你要使用的数据库的文档。
进行一些练习进行测试,即使是明显简单的事物。刚开始时,每个 SGDB 的界面和语法总是会让新手感到困惑。在 PostgreSQL 的网站上提供了卓越的文档,优于书店中你可以找到的大多数有关专有 SGDB 的书籍。至少阅读第一部分、第二部分以及第三部分的章节。
避免使用与数据库的界面,这些界面在很大程度上为你简化了工作。
如果你真的想要学习,首先在文本模式下使用界面。这样做的理由非常充分。
- 在文本模式下,你始终知道正在发生什么。
- 在文本模式下,你被迫学会命令的正确语法。
- 在文本模式下工作的人员能够快速学会在图形模式下工作。但相反的可能并不总是成立。
- 在执行繁重例程时,文本模式始终更加可靠且性能表现更好。
- 文本模式下界面出现 bug 的可能性非常小,而且不太容易崩溃。有时复杂的操作可能会由于图形界面出现故障而不是你的故障而导致错误。
- 在文本模式下界面,所有数据库的高级操作都可用。而在图形模式中不一定有。
- 对于更熟练的用户而言,文本模式往往能带来更高的效率。
- 如果你以后需要在关键环境下操作生产服务器,则该服务器很可能(如果它是一个配置良好的服务器)不会安装图形界面。如果你以后需要在本地操作服务器,则需要使用文本模式下的界面。这通常发生在关键时刻,这时你解决问题所花费的时间可能会让整个团队丢掉工作。
加入自由软件社区。
社区是结识许多有趣人士、获得帮助并帮助他人的一个极佳场所。您将结识许多对您非常有帮助的人。不久之后,您将能够帮助他人。通过提供少量的帮助,您将获得来自世界各地的无数贡献。您可以参加电子邮件讨论组、IRC 频道、网络论坛和实体活动。讨论组通常是必经的起点。然而,要加入讨论组,有一些基本的提示,它们总被引用,但常常被忽视
- 首先阅读手册!
- 使用正确的语法进行书写。不要使用俚语,并避免缩写。
- 在列表中搜索历史记录,查看您的疑问之前是否有人回答过。新手通常总是会有同类型的疑问,而这些疑问已经得到了多次回答。即使对于最无私的人来说,回答同一问题数百次也是令人沮丧的。
- 切勿使用诸如“我需要帮助”或“不起作用”作为电子邮件的主题行。许多电子邮件列表每天都会收发几十封电子邮件。很快就不可能阅读收到的所有邮件。人们通过邮件主题来选择要阅读的内容。请尝试确定一个简短的主题行,并通过该主题行指明您的问题的类型。
- 切勿发送垃圾邮件或与相关列表无关的内容邮件。您可能会被从列表中封禁,或至少会被其他参与者认为是不受信任的人。
- 不要进行任何无休止的激烈争论(口水战)。这些争论几乎不会对整体做出任何贡献。如果您有您认为不可或缺的批评意见,请以礼貌、尊重的形式提出,并且最好不要发送给邮件列表,而是直接发送给收件人。
- Google 及其他网站会爬取公开讨论列表内容的大部分。这意味着,您所写的一切将被全世界的人看到,并且能持续很多年。在进行书写之前请意识到这一点。由于在人生的某个时刻持有激进的立场或表现出职业上的不成熟,许多机会都已失去。任何人在 IT 领域雇用他人之前首先会做的就是将该人的姓名输入 Google,看看会出现什么。
知道您所知道的事情,并知道您所不知道的事情。
这意味着:了解你的限制,保持谦虚,并具有 здравый смысл знать свои личные границы. Прежде чем высказывать мнение, изучайте информацию из различных источников, никогда не ищите простых решений и не принимайте вызовов, не зная точно, какому риску вы себя подвергаете. На начальном этапе, когда вы начинаете знакомиться с СУБД и чувствуете себя более уверенно, естественно проявлять излишний энтузиазм. Однако тестовая среда и рабочая среда обычно отличаются, а иногда, чтобы научиться, как выполнять настройку, обеспечение безопасности, отработку отказа, репликацию и т. д., требуются годы опыта. Это не означает, что вы не должны бросать вызов самому себе; это означает, что всегда лучше иметь хорошую базу знаний, прежде чем отправляться в неизвестное. Пусть даже для этого придется отказаться от некоторых сиюминутных выгод.
Цените знания и людей, а не деньги.
Никто из новичков не начинает сразу зарабатывать много денег. Рынок труда переполнен низкоквалифицированными ИТ-специалистами. На начальном этапе своей карьеры отдавайте предпочтение возможностям трудоустройства, которые дадут вам возможность узнать больше и получать достойную зарплату.
Стремитесь понимать, что вы делаете, и не придерживайтесь готовых рецептов.
Инструкции или руководства могут стать хорошей отправной точкой для изучения новой технологии. Но если от нее реально зависит ваша работа, вам нужно углубиться в нее и понять, как она работает на самом деле. Из кратких инструкций, в которых все рассказывается пошагово, может получиться что-то полезное только в идеальных средах при конкретных обстоятельствах. Когда что-то идет не так, такие материалы вряд ли чем-то могут помочь.
Традиционно в ИТ-сфере считается, что специалисты по администрированию баз данных являются самыми консервативными членами команды, и об этом важно помнить.
他们几乎不信任新事物。他们总是最后才想迁移任何东西或听取市场的流行趋势。这发生的原因很简单,最大的 IT 资产通常由他们负责:数据!任何可能将数据缓慢且不知不觉地降级的问题都可能使整个公司陷入一场灾难性和不可逆转的局面。有些公司甚至因此关门大吉。IT 中的人员和机器是可以更换的。一家公司多年积累的历史数据则不是。另一个加强保守立场的原因是,尽管每天都有无数的软件发布,但 SGBD 通常拥有非常长的开发周期,并且大部分关系数据库理论仍然是 70 年代提出的同样的理论。
了解市场上的不同 SGDB 之间的差异。
PostgreSQL 是一款优秀的解决方案,但在某些特定情况下,其他数据库可能具有某些优势。在自由的 SGBD 中,除了 PostgreSQL 之外,还有出色的 MySQL、Firebird 和 SQLite。在专有的 SGBD 中,最具代表性的 SGBD 是 Oracle、IBM DB/2 和 MS SQL Server。还有一代新兴且有争议面向对象数据库,它们旨在在特定情况下取代关系数据库。在任何情况下,无论您打算开始研究或专注于哪种 SGBD,始终保持开放的心态并了解每种解决方案都有其优缺点这一点非常重要。最新技术是知道何时值得使用其他 SGBD。
对于那些想要开始使用 PostgreSQL 的人来说,一些有趣的链接:
0 - http://en.wikipedia.org/wiki/Data_base_management_system关于 SGBD 的维基百科文章。
1 - https://postgresql.ac.cnPostgreSQL 官方网站
2 - https://postgresql.ac.cn.brPostgreSQL 巴西官方网站
3 - http://pgfoundry.org包含具有自由许可证的与 PostgreSQL 相关的项目的网站
4 - http://planetpostgresql.org关于英文 PostgreSQL 的博客
5 - http://planeta.postgresql.org.br关于葡萄牙文 PostgreSQL 的博客
6 - https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral巴西 PostgreSQL 讨论列表
7- https://postgresql.ac.cn/community/lists PostgreSQL 讨论列表(英文)
8 - https://postgresql.ac.cn/community/weeklynews PostgreSQL 英文周报
9 - irc://irc.freenode.net/#postgresql-br PostgreSQL 巴西 IRC 频道
10 - irc://irc.freenode.net/#postgresql PostgreSQL 官方 IRC 频道(英文)
11 - https://postgresql.ac.cn/docs PostgreSQL 官方文档(英文)
12 - http://pgdocptbr.sourceforge.net/pg80/index.htm PostgreSQL 8.0 版本文档部分译文
13 - https://wiki.postgresql.ac.cn PostgreSQL 相关技术文章
14 - http://www.midstorm.org/~telles/?p=59 - http://www.midstorm.org/~telles/?p=60 - http://www.midstorm.org/~telles/?p=63 我的三部分技术文章,含链接
最初发表在 http://savepoint.blog.br/10-dicas-para-comecar-a-usar-o-postgresql 版权所有 (c) 2006,作者 Fábio Telles Rodriguez ([email protected] - http://www.midstorm.org/~telles)