第一章:准备工作(重点关于mysql)
-
win安装
- 下载:
- 网址:MySQL :: Download MySQL Community Server
- 版本:我的是8.0,但是建议5.7
- 下载:
- 安装,因为是zip文件所以直接解压就好了
- 配置my.ini文件,解压后进入bin文件夹所在的目录,创建my.ini
- 初始化:"你的路径\bin\mysqld.exe" --initialize -insecure
- 我的是这样的(注意路径有双引号,后续用我的作为案例):"D:\Mysql\mysql-8.0.39-winx64\mysql-8.0.39-winx64\bin\mysqld.exe" --initialize -insecure
- 执行后就会生成data目录以及相关配置
- 默认创建root账户,无密码。
- 如果有关于xx.dll文件报错,就去下载这个文件,复制搜索就可以了
- 启动
- "D:\Mysql\mysql-8.0.39-winx64\mysql-8.0.39-winx64\bin\mysqld.exe"
- 这个时候程序会挂起,ctrl+c结束,每次都要手动启动麻烦
- 制作windows服务
- "D:\Mysql\mysql-8.0.39-winx64\mysql-8.0.39-winx64\bin\mysqld.exe" --install mysql80【这是你取的名字,aaa,bbb都行不一定是mysql80】
- 如果建立不了就用管理员的方式打开cmd
- 通过net start/stop 服务名的方式启动关闭
- 也可以:任务栏右击——》任务管理器——》服务——》搜索服务名
- 删除服务:
- "D:\Mysql\mysql-8.0.39-winx64\mysql-8.0.39-winx64\bin\mysqld.exe" --remove mysql80【名字可以不写】
- "D:\Mysql\mysql-8.0.39-winx64\mysql-8.0.39-winx64\bin\mysqld.exe" --install mysql80【这是你取的名字,aaa,bbb都行不一定是mysql80】
- "D:\Mysql\mysql-8.0.39-winx64\mysql-8.0.39-winx64\bin\mysqld.exe"
- 查看(当前先用自带的看看)
- "D:\\Mysql\mysql-8.0.39-winx64\\mysql-8.0.39-winx64" -h ip地址 -P 端口 -u 用户名 -p
- 本地可以不用管-h,-P
- "D:\\Mysql\mysql-8.0.39-winx64\\mysql-8.0.39-winx64" -h ip地址 -P 端口 -u 用户名 -p
- 绝对路径太长了,加入环境变量
- 这个时候mysql=D:\\Mysql\mysql-8.0.39-winx64\\mysql-8.0.39-winx64
- exit退出
- 这个时候mysql=D:\\Mysql\mysql-8.0.39-winx64\\mysql-8.0.39-winx64
- 下载:
-
关于配置文件(my.ini)
- 上述过程我们这配置了一小部分
- 所谓的配置项就是默认值
-
关于密码
- 默认的root没有密码
- 使用set password=password("密码")设置或者修改命令,当然要进入数据库
- 密码忘了怎么办
- 在[mysql】节点下添加
- skip-grant-tables=1
- 重启mysql服务
- net start/stop mysql80
- 重启后,就不要密码了
- mysql -u root -p
- 进入数据库
- use mysql
- update user set authentication_string = password("新密码"),password_last_changed=now() where user="root"
- 退出修改配置文件,删除skip-grant-tables=1
- 重启就可以了(如果有问题就网上看看)
- 在[mysql】节点下添加
-
最后如果启动服务有问题,就用管理员打开cmd试一下
第二章:mysql管理
-
基础知识
- 什么是数据库、表、记录
-
数据库:数据库(Database)是一个用于存储、管理和检索数据的有组织的集合。它可以存储不同类型的信息,比如用户信息、产品信息等。数据库通过表来组织数据。
-
表:表(Table)是数据库中的一个结构化对象,用来存储数据。表格类似于电子表格,由行和列组成。每一列表示某种属性(字段),每一行表示一条数据记录。
-
记录:记录(Record)是表中的一行数据。每一条记录包含与表的字段相关的具体值。例如,一个用户表中的一条记录可能包括用户的姓名、邮箱、电话等信息。
-
- 关系型数据库基础 (RDBMS)
- 关系型数据库:关系型数据库(Relational Database Management System, RDBMS)是以表格形式存储数据的数据库管理系统。数据之间通过表与表之间的关系进行关联,通常使用 SQL(Structured Query Language)进行数据的查询和操作。
- 特性
- 数据表格化:数据存储在表中,表通过行和列组织。
- 数据之间的关系:表之间可以通过外键(Foreign Key)建立关联。
- 数据完整性:通过约束(如主键、外键、唯一性等)来保证数据的准确性和一致性。
- SQL 基础概念:查询语言、数据定义语言、数据操作语言、数据控制语言
-
查询语言(DQL, Data Query Language)
- 主要用于从数据库中检索数据。
- 常用命令:
SELECT
- 示例:
SELECT * FROM users WHERE id = 1;
—— 查询users
表中id
为 1 的用户信息。
-
数据定义语言(DDL, Data Definition Language)
- 用于定义和修改数据库结构,如创建、修改或删除表和数据库。
- 常用命令:
CREATE
,ALTER
,DROP
- 示例:
CREATE TABLE users (id INT, name VARCHAR(50));
—— 创建一个名为users
的表。DROP TABLE users;
—— 删除users
表。
-
数据操作语言(DML, Data Manipulation Language)
- 用于对表中的数据进行操作,如插入、更新、删除数据。
- 常用命令:
INSERT
,UPDATE
,DELETE
- 示例:
INSERT INTO users (name, email) VALUES ('Alice', 'alice@mail.com');
—— 插入一条新的用户数据。UPDATE users SET name = 'Bob' WHERE id = 1;
—— 更新id
为 1 的用户姓名为 "Bob"。DELETE FROM users WHERE id = 2;
—— 删除id
为 2 的用户记录。
-
数据控制语言(DCL, Data Control Language)
- 用于控制用户权限和访问。
- 常用命令:
GRANT
,REVOKE
- 示例:
GRANT SELECT ON database_name TO user_name;
—— 授予用户user_name
对数据库的SELECT
权限。REVOKE INSERT ON database_name FROM user_name;
—— 撤销用户user_name
对数据库的INSERT
权限。
-
- 数据库就是一个厂库,里面的数据按照区域(表)划分,每个区域有两个人,一个用来通过大小分类(属性或者字段或者列),一个用来摆放(行,分组,属性值)
-
id name email phone 1 Alice alice@mail.com 123-456-7890 2 Bob bob@mail.com 987-654-3210
-
- 什么是数据库、表、记录
-
py操作
- 首先安装pymysql模块,pip install pymysql
- 引用模块
- 首先安装pymysql模块,pip install pymysql