由于项目需求,使用8.0以上版本的mysql,但本人电脑只有5.5的,因此为了以后对5.5需要的项目进行维护,所以安装两个版本mysql。
注意:因为两个mysql,所以一定要改变端口号(默认为3306)
1.下载
2.解压
将下载好的压缩包解压到D:\SMyoft\Mysql8.0
路径自定义,但是路径中尽量不要带空格或中文。
配置环境变量
在Path下添加 D:\SMyoft\Mysql8.0\mysql-8.0.17-winx64\bin
这一步的目的是为了避免在CMD窗口下操作时反复切换路径,也可以选择不配置。
尽量手动配置以下mysql的my.ini文件,没有的可以自己创建一个
就是在这里需要注意到配置my.ini文件里面的内容,注意,自己新安装的mysql端口号,默认为3306,所以这里我设置为3307,因为我的3307端口没被占用(你自己要注意看清自己的端口是否被占用,检查端口是否被占用可以按照下面操作进行:)
检查端口是否被占用:
1)、开始---->运行---->cmd,或者是window+R组合键,调出命令窗口
2)、输入命令:netstat -ano,列出所有端口的情况。在列表中观察被占用的端口,比如是49157,首先找到它。
3)、查看被占用端口对应的PID,输入命令:netstat -aon|findstr “49157”,回车,记下最后一位数字,即PID,这里是2720。
4)、继续输入tasklist|findstr “2720”,回车,查看是哪个进程或者程序占用了2720端口,结果是:svchost.exe
5)、或者是打开任务管理器,切换到进程选项卡,在PID一列查看2720对应的进程是谁,如果看不到PID这一列,如下图:
6)、则点击查看—>选择列,将PID(进程标示符)前面的勾打上,点击确定。
7)、这样就看到了PID这一列标识,看一下2720对应的进程是谁,如果没有,把下面的显示所有用户的进程前面的勾打上,就可以看到了,映像名称是svchost.exe,描述是,Windows的主进程,与上面命令查看的完全一致。
8)、结束该进程:在任务管理器中选中该进程点击”结束进程“按钮,或者是在cmd的命令窗口中输入:taskkill /f /t /im Tencentdl.exe。
[mysqld]
# 这里设置3307端口
port=3307
# 设置mysql的安装目录
basedir=D:\SMyoft\Mysql8.0\mysql-8.0.17-winx64
# 设置mysql数据库的数据的存放目录
datadir=D:\SMyoft\Mysql8.0\mysql-8.0.17-winx64\data
# 允许最大连接数
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=3307
default-character-set=utf8
3 安装及初始化mysql服务
注意:cmd一定要是管理员身身份运行:
(1)安装mysql服务
这里服务命名为mysql8,为了区分已经安装的mysql5。
mysqld install mysql8
(2)mysql初始化
mysqld --initialize --console
看见图中红色部分就是执行后的mysql初始默认密码,复制保存,后面会用到。
(3)启动mysql服务
net start mysql8
(4)修改mysql配置
修改密码
在D:\SMyoft\Mysql8.0\mysql-8.0.17-winx64\bin路径进入cmd窗口:
(5)登录
mysql -u root -p
(6)输入前面记下的mysql原始密码
(7)修改密码
ALTER USER 'root'@'localhost'IDENTIFIED WITH mysql_native_password BY '新密码';
(8)给root授权通过ip访问
查看user相关信息:
show databases;
use mysql;
show tables;
select user,host,authentication_string from mysql.user;
这里root只能通过localhost 访问
设置用户root 能通过所有ip访问:
update mysql.user set host='%' where user='root' ;
到此,整个mysql就安装完成了,感觉不出来的,可以使用Navicat或者sqlyog等第三方可视化软件进行测试。