小公司里面的 Python 后端,数据库(MySQL)到底要学习到什么程度?

小公司里面的 Python 后端,数据库(MySQL)到底要学习到什么程度?,第1张

📢📢📢📢📢📢
哈喽!大家好,我是 【梦想橡皮擦】,10 年产研经验,致力于 Python 相关技术栈传播 💗
🌻 本文如果觉得不错,动动小手点个赞赞吧 👍
🌻 本文如果发现错误,欢迎在评论区中指正哦 💗
👍 技术博客日更者,我喜欢写文章,如果任意一篇文章对你有帮助,就挺好的~ 👍
📣📣📣📣📣📣

欢迎大家订阅专栏 ⭐️ ⭐️ 《Python 爬虫 120》⭐️ ⭐️

📆 最近更新:2022 年 4 月 8 日,橡皮擦的第 611 篇原创博客

文章目录
    • ⛳️ Python 后端数据库要求
    • ⛳️ 我们都在用 MySQL 做什么?
    • ⛳️ 数据库加分项
    • ⛳️ 数据库学习线路
    • ⛳️ 数据库运维日常
    • ⛳️ 总结

⛳️ Python 后端数据库要求

作为一个 Python 后端程序员,每天基本都会与数据库打交道,而在二线城市,你的数据库要掌握到哪种程度,才可以成为一名合格的初中级工程师呢?

本篇博客为大家详细说明一个普普通通的省会城市,Python 后端对 MySQL 的要求。


不要类比大厂,大多数人都在从事着普通的应用开发。



本文面向的是初中级程序员,请各位高级程序员和架构师,不要对号入座。


⛳️ 我们都在用 MySQL 做什么?

基本工作场景总结如下:

  1. 日常使用最多的是查询,附带增删改。


  2. 数据库建表一般不使用命令,直接用可视化工具 *** 作即可,一般都安装一个 Navicat 在自己的电脑上(远程也用这个连接),当然九成九使用的也是被免费版本;
  3. 常用的索引是主键索引,外键索引,唯一索引,关联索引;
  4. 公司里面一般会使用常用的 DAO 框架,所以很少直接写 SQL 语句,如果你会写,会大大的加分;
  5. 数据库单表数据一般不会特别大,百万级数据很少能达到;
  6. 部分公司也存在分库分表,负载均衡等实践,但是一般能上这些内容的公司,都会有运维部分,作为一个单纯的后端开发人员,应用即可,很少会涉及,而且你可以使用一些云数据库,非常便捷的就可以解决负载问题
⛳️ 数据库加分项

其实在公司,后端程序员也有职能上的区分,一般按照工作年限和级别区分,技术好一些的,会涉及表结构,表优化等 *** 作,新入职的,仅涉及一些业务逻辑的编写,相应的,面试的时候碰到的问题,也会有所差异。


初级程序员:
询问逻辑实现,偏 Python 技术体系,偏框架;

中级程序员:
询问底层框架搭配,询问数据库优化,询问大数据处理……

⛳️ 数据库学习线路

如果你非计算机专业出身,通过自学或者培训进入到了 IT 行业,并且从事的是 Python 后端相关岗位。


建议你的学习路线如下所示:

  1. MySQL 不同版本环境搭建;
  2. MySQL 基本 *** 作;
  3. 数据查询;
  4. 常用函数;
  5. 索引;
  6. 存储过程;
  7. 触发器;
  8. 视图;
  9. 事务。


以上内容可以简单学习,争取都了解到,其中可以把精力重点放在查询和索引上。



这部分的知识点细节如下:

  1. 数据库 *** 作,创建、查看、选择、删除;
  2. 数据表 *** 作,创建、查看、修改、重命名、删除;
  3. SQL 语句 *** 作,插入、修改、删除;
  4. 数据查询,基本查询、单表查询、聚合函数查询、连接查询、子查询、合并查询

基本内容掌握完毕,就要了解一些 MySQL 中涉及的函数了,例如:

  1. 数学函数
  2. 字符串函数
  3. 日期时间函数
  4. 条件判断函数
  5. 系统信息函数
  6. 加密函数

对于 MySQL 高级部分,可以从存储过程开始学习,接下来的就是触发器、视图、事务等内容,这些在 Python 后端工作中都会反复涉及。


如果这些学下来还不满足,可以针对数据库备份还原,性能优化,数据库安全等内容学习,不过这些知识点的上手难度有些大,初级阶段可以绕一下或者躲一下


在学习 MySQL 的时候,如果你能对数据库表结构关系(例:一对多)还有范式(例:第一范式)有所理解,相信对你的后续的学习帮助极大。


特别备注:
Python 后端的 *** 作大量的涉及 SQL 语句 *** 作,所以下述命令要好好学习:

  • select
  • where
  • limit
  • order by
  • group by
  • join
  • left join
  • ……
⛳️ 数据库运维日常

Python 后端程序员除了应用逻辑的编码工作外,有时还需要对产线数据库日志进行分析,上手最简单的就是慢日志和二进制日志,这些内容可以参考橡皮擦的运维系列和 MySQL 优化系列专栏:

  • Python 运维开发
  • 数据库优化指南

对于 MySQL 锁相关的知识,可以在工作中逐步补充,但是初学阶段,还是需要针对面试准备一些资料,这个知识点在你面试后端的时候,被问到的概率极高。


接下来你可以准备回答如下问题:

  1. 什么是共享锁
  2. 什么是排他锁
  3. 锁的粒度
  4. 描述乐观锁、悲观锁
⛳️ 总结

如果上述基础知识都学习完毕之后,那可以重点关注一下 Python 中提供相应能力的第三方库,例如 pymysql,mysqlclient,peewee,SQLAlchemy 等内容。


📗 希望你找到自己喜欢的工作,最好是在自己的老家。


📗

📣📣📣📣📣📣
🌻 本文如果发现错误,欢迎在评论区中指正哦 💗

欢迎大家订阅专栏 ⭐️ ⭐️ 《Python 爬虫 120》⭐️ ⭐️

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/567442.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-09
下一篇 2022-04-09

发表评论

登录后才能评论

评论列表(0条)

保存