MySQL常用基础知识点复习整理
TODO:
- MySQL的安装配置(Window系统下)
- 命令操作
- 操作MySQL数据库
- 创建数据库
- 查看和选择数据库
- 删除数据库
- 常见的字段类型
- 数值类型
- 日期和时间类型
- 字符串类型
- 操作表
- 创建数据表
- 查看表结构
- 修改字段名称
- 修改字段数据类型
- 删除字段
- 删除表
- 数据表添加字段(三种方式)
- 操作数据(增删改查)
- 插入数据记录
- 更新数据记录
- 删除数据记录
- 清空表记录
- 操作索引
- 操作视图
- 操作触发器
- 事务机制
- 操作MySQL数据库
MySQL的安装配置(Window系统下)
MySQL下载地址:https://downloads.mysql.com/archives/community/
- 下载
目前MySQL分为两大版本,MySQL 5.x 和 MySQL 8.x,其中大多数使用的是 5.7 版本的 MySQL。
5.x 版本可以直接从官网进行下载,其下载的是一个ZIP压缩包,下载完成后,直接将其解压至想要安装的文件夹即可。 - 配置
完成解压安装后,需要写入配置文件,建议写在安装的文件夹中,创建my.ini文件,编辑其内容如下(以5.7.31为例):
可以通过# 设置数据库端口 port=3306 # 设置 MySQL 的安装目录 basedir=C:\\Program Files\\mysql-5.7.31-w"C:\Program Files\mysql-5.7.31-winx64\bin\mysqld.exe" --help --verbose查看MySQL配置文件的优先级,在安装目录下创建MySQL配置文件可以避免安装了多个MySQL版本造成的冲突问题。 - 初始化
使用"C:\Program Files\mysql-5.7.31-winx64\bin\mysqld.exe" --initialize-insecure命令可以进行初始化。该过程会自动创建data目录,数据会存放在这个目录中。同时创建一些必备的数据,例如默认账户root(无密码),用于登录MySQL并通过指令操作MySQL。
可能出现的问题:msvcr120.dll不存在
1. 安装vcredist:https://www.microsoft.com/zh-cn/download/confirmation.aspx?id=40784
2. 安装dirctx:https://wwwmicrosoftcom/zh-CN/download/detailsaspx?id=35 - 启动
方式一:临时启动
>>> "C:\Program Files\mysql-5.7.31-winx64\bin\mysqld.exe"
方式二:制作服务
可以通过以下命令制作服务:
>>> "C:\Program Files\mysql-5.7.31-winx64\bin\mysqld.exe" --install mysql57
通过以下方式启动服务:
>>> net start mysql57
当想要卸载MySQL服务时,可使用下列命令:
>>> "C:\Program Files\mysql-5.7.31-winx64\bin\mysqld.exe" --remove mysql57 - 测试连接 MySQL
通过 mysql.exe 可以测试连接MySQL
>>> "C:\Program Files\mysql-5.7.31-winx64\bin\mysql.exe" -h 127.0.0.1 -P 3306 -u root -p
该命令中,-h表示IP地址,-P表示端口,-u表示用户名,-p表示密码。在本地环境时,即连接本地数据库时,参数-h和参数-P都是可以省略的。 - 关于密码
- 设置和修改密码
登录账户后,输入命令修改密码:-- 输入以下命令即可修改账户的密码 set password = password('Your Password') - 忘记密码
如果忘记了MySQL账户的密码,需要进行以下的操作:- 修改配置文件,在 [mysqld] 节点下添加
skip-grant-tables=1。[mysqld] skip-grant-tables=1 - 重启 MySQL 服务,再次登录时,无需密码即可登录。
net stop mysql57 net start mysql57 mysql -u root -p - 进入数据库后执行修改密码命令。
use mysql; update user set authentication_string = password('New Password'), password_last_changed()=now() where user='root'; - 退出并再次修改配置文件,注释掉 skip-grant-tables=1 。
[mysqld] # skip-grant-tables=1 - 再次重启,即可使用新密码登录。
- 修改配置文件,在 [mysqld] 节点下添加
- 设置和修改密码
命令操作
操作MySQL数据库
MySQL数据库其实就像是文件夹,MySQL数据库中的表其实就相当于数据库中的Excel文件。
- 创建数据库
-- 创建数据库命令 create database [数据库名称] CREATE DATABASE testdb; -- 或者使用更多的约束来限制 create 命令 CREATE DATABASE testdb DEFAULT CHARSET utf8 COLLATE utf8_general_ci; - 查看当前所有的数据库:
SHOW DATABASES [LIKE '数据库名'];
结果如下:-- LIKE 为可选字段, 其后可以加数据库的名称, 数据库名称用单引号包裹 -- % 百分号表示通配符 SHOW DATABASES LIKE 'test%';+------------------+ | Database (test%) | +------------------+ | test | | testdb | +------------------+ 2 rows in set (0.00 sec) - 选择数据库:
USE 数据库名;-- 选择数据库, 相当于进入文件夹 USE testdb; - 删除数据库:
DROP DATABASE 数据库名;-- 删除数据库 DROP DATABASE testdb; - [拓展] Python 如何使用 MySQL
import pymysql # 连接MySQL conn = pymysql.connect(host="127.0.0.1", port=3306, user='root', passwd='root', charset=utf8) cursor = conn.cursor() # 获取游标 # 一般来说, pymysql中, 需要查看的命令, 都使用 fetchall() 来获取返回结果 # 而创建(新增)、删除、修改等, 需要使用 commit() 来提交命令 # 1. 查看数据库 cursor.execute("SHOW DATABASES") result = cursor.fetchall() # 2. 创建数据库 cursor.execute("CREATE DATABASE testdb DEFAULT CHARSET utf8 COLLATE utf8_general_ci") conn.commit() # ...(其他代码不再赘述) # 关闭连接 cursor.close() conn.close()
754

被折叠的 条评论
为什么被折叠?



