MySQL 是一款安全、跨平台、高效的,并与 PHP、Java 等主流编程语言紧密结合的数据库系统。
以下教程以windows10 64位计算机为例(其他windows系统类似)
官方网站下载
https://dev.mysql.com/downloads/mysql/
根据自己的电脑配置选择对应版本.zip压缩包格式下载。
无需登录,直接下载
百度云快捷下载
链接:https://pan.baidu.com/s/1hcEKFAQ6Fq7kFLG8x7SQCQ
提取码:2bfg
将MySQL压缩包解压缩至D盘(更换其他盘也可以)
1.环境变量的配置
此电脑->属性->高级系统设置->环境变量->编辑Path->新建Path环境变量
D:\mysql-8.0.27-winx64\bin
2.MySQL数据库配置 在 D:\mysql-8.0.27-winx64\ 路径下新建 my.ini 配置文件,编辑my.ini文件如下内容(直接复制)
[mysqld]
#skip-grant-tables
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
innodb_buffer_pool_size = 128M
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
# These are commonly set, remove the # and set as required.
# mysql根目录
basedir = D:/mysql-8.0.27-winx64
# 数据文件存放目录
datadir = D:/mysql-8.0.27-winx64/data
# 端口,默认3306
port = 3306
# 服务实例的唯一标识
# server_id = MySQL
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为utf8mb4
character_set_server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
join_buffer_size = 128M
sort_buffer_size = 2M
read_rnd_buffer_size = 2M
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4
其中basedir、datadir、port需要修改为自己的配置 以管理员身份运行cmd.exe系统命令行,进入到D:\mysql-8.0.27-winx64\bin 目录下 执行以下语句:
mysqld --install mysql --defaults-file="D:\mysql-8.0.27-winx64\my.ini"
出现 Service successfully installed 表示数据库安装完毕
在 D:\mysql-8.0.27-winx64\ 路径下新建 data 文件夹,存储数据库文件 由于 mysql 5.7 版本后没有默认 data 文件夹,需要设置data 为默认数据库文件夹. 以管理员身份运行cmd.exe系统命令行,进入到D:\mysql-8.0.27-winx64\bin目录下 执行以下语句:
d:
cd D:\mysql-8.0.27-winx64\bin
mysqld -initialize
初始化成功,data目录下生成配置文件
3.注册windows服务
以管理员身份运行cmd.exe系统命令行,进入到D:\mysql-8.0.27-winx64\bin目录下(已在此目录下不用切换) 执行以下语句:
mysqld --install MySQL8
服务名 MySQL8 可以修改
4.启动服务
net start MySQL8
启动成功
5.登录MySQL
mysql -u root -p
临时密码在data目录下,.err后缀的文件中。
登录成功
6.修改默认密码在MySQL数据库命令行中执行以下命令:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root'
flush privileges
7.数据库管理管理软件(可跳过)
解决:basedir和datadir配置路径写法有问题
basedir = D:\dev\mysql-8.0.12
datadir = D:\dev\mysql-8.0.12\data
正确目录写法:
basedir = D:/dev/mysql-8.0.12
datadir = D:/dev/mysql-8.0.12/data
或者
basedir = D:\\dev\\mysql-8.0.12
datadir = D:\\dev\\mysql-8.0.12\\data
2.MySQL在root下修改密码报错:ERROR 1064 (42000): You have an error in your SQL syntax;check the manual that… 报错原因: 新版本MySQL(8.0以上)不支持使用
SET PASSWORD FOR 'username'@'hostname' = PASSWORD ('newpwd');
或者
mysqladmin -u root -p password "rootpwd"
来修改用户密码。
解决方法:
alter user'username'@'hostname' identified by 'newpwd';
或者
alter 'username'@'hostname' identified with mysql_native_password by 'newpwd';
或者(修改当前用户的密码)
set password = 'newpwd';
部分问题仅供参考,具体问题具体分析!