1.下载
mysql压缩包版本和msi版的安装方法不一样,下面的是压缩包版本的安装详细图解:
总地址下载地址:MySQL :: Download MySQL Community Server
MySQL :: Download MySQL Community Server (Archived Versions)
压缩版下载MySQL :: Download MySQL Community Server (Archived Versions)
安装版下载 MySQL :: Download MySQL Installer (Archived Versions)
2.安装:
将下载的mysql-5.6.45-winx64压缩包解压后的整个目录放在自己喜欢的位置
3.配置文件:
进入mysql-5.6.45-winx64目录,将里面的my-default.ini文件复制一份,并命名为 my.ini
3.1 添加my.ini配置文件
新增my.ini,内容如下:(同时存在default.ini和my.ini,会自动使用my.ini)
注意:配置文件的格式应为ANSI编码
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4
[mysqld]
#设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=D:\\mysql\\mysql-5.6.45-winx64
# 设置mysql数据库的数据的存放目录
datadir=D:\\mysql\mysql-5.6.45-winx64\\data
# 允许最大连接数
max_connections=1500
# utf8mb4 为真正的utf8类型
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 执行语句的长度(16M)
max_allowed_packet=16777216
4、安装mysql服务
1、以管理员身份打开cmd窗口后,将目录切换到你解压文件的bin目录
2、输入 mysqld install 回车运行就行了,出现下面提示,表示安装成功:
Service Successfully installed.
注意:5.7版本的MySQL默认没有Data文件夹,执行 mysqld --initialize-insecure --user=mysql 脚本
(执行完这条命令后,MySQL会自建一个data文件夹,并且建好默认数据库,登录的用户名为root,密码为空)
5、启动mysql服务
输入 net start mysql 启动服务
MySQL 服务正在启动
MySQL 服务已经启动成功。
6、登录mysql
1、输入mysql -u root -p ,默认是没有密码的。
2、回车进入,root是用户名,
3、设置登录密码:
#第一种方式:(5.6及其以下版本)#老版本mysql修改密码
update mysql.user set password=PASSWORD('root')where User='123456';#第二种方式:(5.7及其以上版本)高版本的mysql user表中没有Password字段,因为被替换成authentication_string字段了,所以修改密码如下
update mysql.user set authentication_string=password('root') where user='123456'; #第三种方式:
ALTER USER 'root'@'localhost'IDENTIFIED BY '123456'#最后执行如下语句让秘密生效
FLUSH PRIVILEGES;
7、问题总结
问题1、如何查看服务启动出现问题的日志
mysqld --console
- 输入mysqld --console 把信息打印到控制台 然后寻找一下信息中有没有出现
[ERROR] Can’t start server: Bind on TCP/IP port: No such file or directory [ERROR] Can’t start server: Bind on TCP/IP port: No such file or directory [ERROR] Do you already have another mysqld server running on port: 3306 ? [ERROR] Aborting
这几个错误,如果有就继续看下去。如果是不一样的错误的话我相信你已经有新的思路去找问题了。
- 输入netstat -aon|findstr “3306” 去查找占用了3306端口的进程id
- 然后打开任务管理器 到详细找到刚才看到的进程id 结束掉然后运行 net start mysql 就可以运行了
问题2、如果之前有安装过mysql,或者没卸载干净,这里会提示:
The vervice already exists!
The current server installed:以前安装mysql的地址/bin/mysqld-nt MYSQL
解决办法:
卸载原来的mysql
#移除原来的mysql服务 net stop mysql mysqld -remove mysql #或者 sc delete mysql #重新注册 mysql服务 mysqld –install MySQL –defaults-file="mysql安装的根目录\my.ini"
问题3、出现如下情况
D:\SLDL\publish\mysql\mysql-5.6.45-winx64\bin>mysqld install Service successfully installed.
解决办法:用管理员启动cmd
问题4、启动服务的时候如果遇到: 服务正在启动或停止中,请稍后片刻再试一次。
解决办法:
1、以管理员身份打开命令行窗口
2、输入命令 tasklist| findstr "mysql",用于查找mysql的残留进程。
3、输入命令taskkill/f /t /im mysqld.exe,就可以将mysql残留进程全部杀死了,
4、再次输入命令tasklist| findstr "mysql",查看是否还留有有其他的mysql残留进程,如果还有,则继续杀死,直到完全杀死进程为止
注意:是因为5.6以后的mysql默认没有data目录的,我们可以看下目录结构(有5.6(含)之前有data目录的,不需要执行这一步)
问题5、对于没有data文件夹的情况
解决办法:
输入:mysqld --initialize-insecure --user=mysql
(执行完这条命令后,MySQL会自建一个data文件夹,并且建好默认数据库,登录的用户名为root,密码为空)
问题6、在启动的时候报如下错误
error: Found option without preceding group in config file: D:\mysql-5.6.24-win32\my.ini at line: 1 Fatal error in defaults handling. Program aborted
原因:my.ini文件格式是utf-8
解决办法,my.ini文件保存为ANSI格式文件
问题:由于找不到MSVCR100.dll,无法继续执行代码
解决办法:安装vc++2010运行库即可
8、查看mysql版本
输入命令:status
9、查看数据本地存放位置
输入命令:show variables like 'datadir';