廖雪峰mysql安装教程 pdf_使用MySQL - 廖雪峰 Python 3 教程
MySQL是Web世界中使用最广泛的数据库服务器。SQLite的特点是轻量级、可嵌入,但不能承受高并发访问,适合桌面和移动应用。而MySQL是为服务器端设计的数据库,能承受高并发访问,同时占用的内存也远远大于SQLite。
此外,MySQL内部有多种数据库引擎,最常用的引擎是支持数据库事务的InnoDB。
安装MySQL
可以直接从MySQL官方网站下载最新的Community Server 5.6.x版本。MySQL是跨平台的,选择对应的平台下载安装文件,安装即可。
安装时,MySQL会提示输入root用户的口令,请务必记清楚。如果怕记不住,就把口令设置为password。
在Windows上,安装时请选择UTF-8编码,以便正确地处理中文。
在Mac或Linux上,需要编辑MySQL的配置文件,把数据库默认的编码全部改为UTF-8。MySQL的配置文件默认存放在/etc/my.cnf或者/etc/mysql/my.cnf:
[client]
default-character-set = utf8
[mysqld]
default-storage-engine = INNODB
character-set-server = utf8
collation-server = utf8_general_ci
重启MySQL后,可以通过MySQL的客户端命令行检查编码:
$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor...
...
mysql> show variables like '%char%';
+--------------------------+--------------------------------------------------------+
| Variable_name | Value |
+--------------------------+--------------------------------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/mysql-5.1.65-osx10.6-x86_64/share/charsets/ |
+--------------------------+--------------------------------------------------------+
8 rows in set (0.00 sec)
看到utf8字样就表示编码设置正确。
注:如果MySQL的版本≥5.5.3,可以把编码设置为utf8mb4,utf8mb4和utf8完全兼容,但它支持最新的Unicode标准,可以显示emoji字符。
安装MySQL驱动
由于MySQL服务器以独立的进程运行,并通过网络对外服务,所以,需要支持Python的MySQL驱动来连接到MySQL服务器。MySQL官方提供了mysql-connector-python驱动,但是安装的时候需要给pip命令加上参数--allow-external:
$ pip install mysql-connector-python --allow-external mysql-connector-python
如果上面的命令安装失败,可以试试另一个驱动:
$ pip install mysql-connector
我们演示如何连接到MySQL服务器的test数据库:
# 导入MySQL驱动:
>>> import mysql.connector
# 注意把password设为你的root口令:
>>> conn = mysql.connector.connect(user='root', password='password', database='test')
>>> cursor = conn.cursor()
# 创建user表:
>>> cursor.execute('create table user (id varchar(20) primary key, name varchar(20))')
# 插入一行记录,注意MySQL的占位符是%s:
>>> cursor.execute('insert into user (id, name) values (%s, %s)', ['1', 'Michael'])
>>> cursor.rowcount
1
# 提交事务:
>>> conn.commit()
>>> cursor.close()
# 运行查询:
>>> cursor = conn.cursor()
>>> cursor.execute('select * from user where id = %s', ('1',))
>>> values = cursor.fetchall()
>>> values
[('1', 'Michael')]
# 关闭Cursor和Connection:
>>> cursor.close()
True
>>> conn.close()
由于Python的DB-API定义都是通用的,所以,操作MySQL的数据库代码和SQLite类似。
小结
执行INSERT等操作后要调用commit()提交事务;
MySQL的SQL占位符是%s。
参考源码
廖雪峰mysql安装教程 pdf_使用MySQL - 廖雪峰 Python 3 教程相关推荐
- 数据库系统原理与应用教程(002)—— MySQL 安装与配置:MySQL 软件的卸载(windows 环境)
数据库系统原理与应用教程(002)-- MySQL 安装与配置:MySQL 软件的卸载(windows 环境) 目录 数据库系统原理与应用教程(002)-- MySQL 安装与配置:MySQL 软件的 ...
- 数据库系统原理与应用教程(001)—— MySQL 安装与配置:MySQL 软件的安装(windows 环境)
数据库系统原理与应用教程(001)-- MySQL 安装与配置:MySQL 软件的安装(windows 环境) 目录 数据库系统原理与应用教程(001)-- MySQL 安装与配置:MySQL 软件的 ...
- 4步搞定MySQL安装部署(附MySQL一键式部署脚本)
墨墨导读:良好的开端是成功的一半,从MySQL安装开始. 学习数据库技术,实际动手的第一步是安装自己的MySQL.MySQL方面也提供多样式的安装方式rpm ,tar ,源码包.当安装完投入使用之后, ...
- mysql装不上怎么办_MySQL数据库之mysql安装不上怎么办 mysql安装失败原因和解决方法...
本文主要向大家介绍MySQL数据库之mysql安装不上怎么办 mysql安装失败原因和解决方法了 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. mysql数据库安装不了了!my ...
- MySQL安装失败清理以及MySQL卸载全面教程
步骤一:停止MySQL服务 组合键"Ctrl+Alt+Del",打开任务管理器,在"服务"列表找到mysql服务,如:"MySQL56",& ...
- mysql安装后目录介绍,MySQL安装后的目录结构及配置文件详解
MySQL安装后的目录结构及配置文件详解 MySQL安装后的目录结构及配置文件详解 MySQL目录结构说明 MySQL 安装完成后,会在磁盘上生成一个目录,该目录就被称为 MySQL 的安装目录. M ...
- mysql 安装盒子_Windows2008 装 MySQL 问题
昨天在2008里装MySQL,遇以了一些问题,装的是mysql-5.6.20-winx64.msi版本,不知道是版本太新还是兼容,还是系统权限配置问题,老是报错,多数是杂乱的错误,这里主要记一下MyS ...
- rhel mysql安装_RHEL6.4下MySQL安装方法及简单配置
1.MySQL安装方法简介 1.rpm包yum安装 2.通用二进制包安装 3.源码编译安装 注意:实验所采用的系统平台为:RHEL6.4 2.rpm ins 首页 → 数据库技术 背景: 阅读新闻 R ...
- linux mysql 安装innodb_在ubuntu Mysql 5.7 安装InnoDB Memcached 插件
在ubuntu Mysql 5.7 安装Memcached 插件 参考:https://dev.mysql.com/doc/refman/5.7/en/innodb-memcached-setup.h ...
最新文章
- 你不知道的18个Python高效编程技巧
- 信息检索顶会SIGIR 2021大奖出炉!山东大学荣获最佳学生论文
- 英文投稿成功接收的经验
- 河南省第十一届ACM程序设计竞赛 修路
- mysql运用与实践_MySQL开发与实践 PDF 下载
- 抢红包神器上线,再也不怕抢不到红包了!
- 直接将自身代码注入傀儡进程
- 限时秒杀┃月销10000+件,风靡全国的steam科学实验套装
- 用Spark学习FP Tree算法和PrefixSpan算法
- 9篇!悉尼科技大学入选CVPR2021都研究什么?
- nginx反代web页面没有正常显示_web漏洞-SSI注入漏洞深入详解
- 建筑工程师的转行学计算机科学与技术的抉择
- 基于微信校园二手书交易小程序系统 毕业设计毕设参考
- linux css压缩工具下载,推荐15个最好用的JavaScript代码压缩工具
- 虚拟化在防泄密领域的痛点
- Python爬虫基础-mysql数据库
- ThreeJS加载geojson数据实现3D地图
- Odoo开源ERP:功能模块操作-销售功能篇
- 气体灭火系统的发展历程
- 关于ionic2 app 接入支付宝支付出现ALI40247(系统繁忙,请稍后再试)
热门文章
- PHP能不能让一串代码现实,一段让你认清现实的Java代码.java
- 鸿蒙开发者社区入口,鸿蒙OS 社区
- 嵌套套娃,MySQL子查询,单行与多行子查询,相关和不相关(关联)子查询,完整详细可收藏
- (1.1)HarmonyOS鸿蒙中Ability概念及意义
- html 高度不够,HTML/CSS:Div未扩展到内容高度
- php滴滴平台接口,图片服务API文档
- linux中查找文件属于那个软件包的方法
- 极光推送服务端API(定时推送任务,推送到指定设备,推送到所有设备)
- 【Electron】Electron开发入门(八):自定义electron框架外壳(shell)的菜单(Menu)...
- Java学习笔记之:Java String类