一、下载安装包
下载链接:https://dev.mysql.com/downloads/mysql/
备用链接:https://download.csdn.net/download/weixin_51111267/78252289


- 跳过注册登录,直接下载

下载完解压,我这解压到:F:\cs01\mysql-8.0.28-winx64 文件夹
二、配置下 MySQL 的配置文件
打开刚刚解压的文件夹 F:\cs01\mysql-8.0.28-winx64,在该文件夹下创建 my.ini 配置文件,编辑 my.ini 配置以下基本信息(.txt编辑完再改.ini后缀):
[client]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
# 设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=F:\\cs01 # 这里改自己要安装的文件夹,一定要用\\
# 设置 mysql数据库的数据的存放目录,MySQL 8+ 不需要以下配置,系统自己生成即可,否则有可能报错
# datadir=F:\\cs01
# 允许最大连接数
max_connections=20
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
如下图:

三、启动 MySQL 数据库:
1、以 管理员 身份(开始菜单搜索cmd右键查看)打开 cmd 命令行工具,切换到bin目录:
cd F:\cs01\mysql-8.0.28-winx64\bin
2、初始化数据库:
mysqld --initialize --console
*执行这条命令没反应可能是C:\Windows\System32文件夹缺少了这个vcruntime140_1.dll文件,
金山毒霸或者百度下一个放进去

执行完成后,会输出 root 用户的初始默认密码,如:

//进入数据库后使用下面命令修改密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
*如果忘记 root 密码就要重新初始化数据库,初始化前一定要删除安装目录文件夹和关闭 mysqld.exe 进程
3、输入以下安装命令:
mysqld install
安装成功如图:

4、启动mysql命令:
net start mysql
# net stop mysql # 停止mysql
注意: 在 5.7 需要初始化 data 目录,命令:
mysqld --initialize-insecure
#初始化后再运行 net start mysql 即可启动 mysql
五、登录 MySQL
将安装路径 D:\xxx\mysql-8.0.28-winx64\bin 添加到path
系统环境变量
当 MySQL 服务已经运行时,使用以下命令:
mysql -u root -p密码 # 密码要贴着p
*远程连接登录:mysql -h 主机地址 -u 账号 -p密码
填写好初始密码进入,成功如下所示

*遇到问题①:提示修改初始密码

解决办法,修改初始密码:
//进入数据库执行以下命令
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
添加新用户命令
//创建新用户
use mysql;
create user 'public'@'%' identified by 'public123456'; // %:为允许内外网都能访问,'localhost' :只能本机
flush privileges; // 刷新权限
create database publicdb DEFAULT CHARSET utf8 COLLATE utf8_general_ci; // 创建一个数据库
GRANT ALL PRIVILEGES ON publicdb.* TO 'public'@'%';
//给用户public开启publicdb数据库的所有权限
查看有哪些数据库:
show databases;

使用python连接
import pymysql
#打开数据库连接
db = pymysql.connect(host='localhost',user="root",passwd="密码",db="mysql") # db为数据库名
print(db)
cur = db.cursor() # 使用cursor()方法获取操作游标
# cur = db.cursor(mysql.cursor.DictCursor) # 读取数据返回的是字典0
sql = """SELECT runoob_id, runoob_title,
runoob_author, submission_date
FROM abc;"""
cur.execute(sql) #执行sql语句
db.commit() # 提交数据,插入数据时使用
results = cur.fetchall() #获取查询的所有记录
print(results)
六、MySQL基本语法
show databases; // 查看当前所有的数据库
create database mysql; // 创建mysql数据库
use mysql; //使用mysql数据库
show databases; // 查看当前所有的数据库
#创建数据表及格式
create table if not exists `login`(
`ID` INT UNSIGNED AUTO_INCREMENT,
`user_name` varchar(20) not NULL,
`password` varchar(18) not NULL,
`create_date` date,
PRIMARY KEY ( `ID` )
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
show tables; //查看mysql库下面的表
show columns from login; // 查看login数据表的格式
insert into login values('001','a177447','abc123','2022-1-27'); //插入数据到 login 表
select * from login; // 查看login里面的数据
SELECT * from login WHERE user_name='a177447'; // 在login中查看用户的单条数据
truncate table 表名; // 删除表中所有数据,无日志
1、python插入数据到数据表
sql = "insert into login values('001','a177447','abc123','2022-1-27');"
cur.execute(sql) #执行sql语句
db.commit() # 提交数据
db.close() # 关闭
2、python查看匹配数据表的数据
sql = "SELECT * from login WHERE user_name='a177447';"
cur.execute(sql) #执行sql语句
password = cur.fetchall()[0][2] # 获取用户密码,password=abc123
2425

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



