MySQL 是一款安全、跨平台、高效的,并与 PHP、Java 等主流编程语言紧密结合的数据库系统。
以下教程以windows10 64位计算机为例(其他windows系统类似)
01下载
官方网站下载
https://dev.mysql.com/downloads/mysql/
根据自己的电脑配置选择对应版本.zip压缩包格式下载。
无需登录,直接下载
百度云快捷下载
链接:https://pan.baidu.com/s/1hcEKFAQ6Fq7kFLG8x7SQCQ 提取码:2bfg
02配置
将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.数据库管理管理软件(可跳过)
03常见问题
初始化的时候,提示找不到data目录
解决: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';
部分问题仅供参考,具体问题具体分析!