网上教程一篇坑,掉发从此无止境。。。。。。。
目录
一 下载MYSQL数据库压缩包
1.打开地址MySQL :: Download MySQL Community Server
二 添加MYSQL配置
三 配置系统环境
1.系统属性—》环境变量——》
2.在用户变量和系统变量的Path里添加bin目录:
四 启动MYSQL
1.进入MYSQL目录
1)windows Powershell
2)cmd方式
2.初始化MYSQL数据库
1)windows Powershell执行
2)cmd窗口执行
3.安装MYSQL
1)windows Powershell执行
2)cmd窗口执行
中途遇见的坑
一 下载MYSQL数据库压缩包
1.打开地址MySQL :: Download MySQL Community Server
绿框是正式版
红框的是debug版
正常情况下载绿框的就可以了。
点击download
出现如下界面
如果不想注册界面直接点击红框链接下载MYSQL
解压文件,我解压到了D:Program Files目录下,这个根据自己的需求自行解压。 目录如下
这是官网最干净的目录了。你可能从其他网站下载的压缩包会有一些其他文件。
其中bin目录是MYSQL所有相关运行程序
include是接口头文件,用于数据库软件封装和开发
二 添加MYSQL配置
MYSQL数据库配置在根目录(解压出来的文件夹目录,和bin通缉)创建txt文件命名为my.ini。
名称必须是my.ini,一定要注意
用记事本打开并写入文本
[mysqld]
#设置3306端口
port=3306
#设置mysql的安装目录
basedir=D:Program Filesmysql-8.0.29-winx64database
#设置mysql数据库的数据的存放目录
datadir=D:Program Filesmysql-8.0.29-winx64databaseData
#允许最大连接数
max_connections=200
#允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
#服务端使用的字符集默认为UTF8
character-set-server=utf8
#创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
#默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
[mysql]
#设置mysql客户端默认字符集
default-character-set=utf8
[client]
#设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8
其中
上面红框部分 basedir路径和 datadir根据自己的数据存放位置填写自己的数据库路径(可以是自己自定义的创建的路径)。我的是“D:Program Filesmysql-8.0.29-winx64database”和“D:Program Filesmysql-8.0.29-winx64databasedata”
如下:
端口说明
1 红色框端口是MYSQL程序运行时的端口
可以在终端输入
netstat -aon
红框的端口就是我们上面配置的第一个端口。这个值可能会被占用导致启动失败。可以设置其他值,这个根据你的计算机服务器来决定,只要其他程序没有使用就可以了。用于标识网络传输数据的应用程序唯一id。
我们可以通过上面的PID:14828在任务管理器和资源监视器里找到对应的MYSQL程序
2.绿框的端口是客户端连接服务器用的端口
三 配置系统环境
1.系统属性—》环境变量——》
2.在用户变量和系统变量的Path里添加bin目录:
我的bin目录(D:Program Filesmysql-8.0.29-winx64bin)如下图
环境变量设置
四 启动MYSQL
管理员运行cmd窗口或者windows Powershell
1.进入MYSQL目录
执行指令cd myspl的bin目录
1)windows Powershell
执行cd myspl的bin目录,
我的是D:Program Filesmysql-8.0.29-winx64bin,如果路径有空格用””括起来,如下图
2)cmd方式
管理员权限运行cmd
执行指令
d:
cd D:Program Filesmysql-8.0.29-winx64bin
2.初始化MYSQL数据库
执行指令mysqld –initialize-insecure
1)windows Powershell执行
./mysqld –initialize-insecure
如下
2)cmd窗口执行
mysqld –initialize-insecure
执行结束后MYSQL将会根据我们上面my.ini配置的路径生成对应的文件。
注意my.ini的basedir和datadir路径一定要存在。没有就手动创建
否则会报
mysqld: Can’t create directory ‘D:Program Filesmysql-8.0.29-winx64databaseData’ (OS errno 2 – No such file or directory)
2022-06-01T09:01:52.391942Z 0 [Warning] [MY-010918] [Server] ‘default_authentication_plugin’ is deprecated and will be removed in a future release. Please use authentication_policy instead.
2022-06-01T09:01:52.391991Z 0 [System] [MY-013169] [Server] D:Program Filesmysql-8.0.29-winx64binmysqld.exe (mysqld 8.0.29) initializing of server in progress as process 7316
2022-06-01T09:01:52.392194Z 0 [ERROR] [MY-010338] [Server] Can’t find error-message file ‘D:Program Filesmysql-8.0.29-winx64databaseshareerrmsg.sys’. Check error-message file location and ‘lc-messages-dir’ configuration directive.
2022-06-01T09:01:52.393461Z 0 [Warning] [MY-013242] [Server] –character-set-server: ‘utf8’ is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous.
2022-06-01T09:01:52.395229Z 0 [ERROR] [MY-010187] [Server] Could not open file ‘D:Program Filesmysql-8.0.29-winx64databaseDataDESKTOP-2ROHFVB.err’ for error logging: Permission denied
2022-06-01T09:01:52.396030Z 0 [ERROR] [MY-013236] [Server] The designated data directory D:Program Filesmysql-8.0.29-winx64databaseData is unusable. You can remove all files that the server added to it.
2022-06-01T09:01:52.396206Z 0 [ERROR] [MY-010119] [Server] Aborting
2022-06-01T09:01:52.396657Z 0 [System] [MY-010910] [Server] D:Program Filesmysql-8.0.29-winx64binmysqld.exe: Shutdown complete (mysqld 8.0.29) MySQL Community Server – GPL.
3.安装MYSQL
执行指令mysqld -install
1)windows Powershell执行
./mysqld -install
如下
2)cmd窗口执行
mysqld -install
执行完后将会出现
Service successfully installed.的提示
4.启动MYSQL
windows Powershell和cmd是一样的,执行指令
net start mysql
结果如下图
到此服务器就配置成功了
中途遇见的坑
1.未初始化MYSQL,即没执行 mysqld –initialize-insecure指令或者执行失败。执行net start mysql指令失败,服务器启动失败
PS D:Program Filesmysql-8.0.29-winx64bin> net start mysql
MySQL 服务正在启动 .
MySQL 服务无法启动。
服务没有报告任何错误。
遇到此问题首先检查my.ini文件的配置的路径basedir和datadir是否存在,如果不存在手动创建。
将上面的文件路径匹配好后,再次执行 mysqld –initialize-insecure指令