注:本教程用的都是解压包式安装部署MYSQL服务器而非引导程序式(或傻瓜式)形式安装部署
目录
MySQL5.7.40安装
MySQL8.0.32安装
1,打开解压包(文件夹)mysql-5.7.40-winx64如图
注册服务命令:mysqld install MYSQL5.7.40(注册的服务名)
(此时由于没有事先创建配置文件,故默认端口号为3306,如果存在3306占用情况,就是在此之前已经安装过其它MYSQL等....,就需要查看下面的8.0.32教程先)
Windows+R:
此时会弹出一个Service successfully installed.
如下图
查看有无已注册服务,命令:services.msc
附(这其中可能还需要的命令):
1,查看注册表的MYSQL信息
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Eventlog\Application\MySQL
2,移除Mysql服务
mysqld --remove mysql(服务名,如MYSQL8.0.32)
3,停止服务
net stop MYSQL(服务名)
以管理员身份打开cmd,切换到bin目录下(用之前已打开的黑窗口就好)
输入命令:mysqld --initialize
注:该命令执行完毕以后,没有输出
生成对应的data文件,找到.err文件里面对应的初始密码password(该步骤之后最好先行保存下来)
执行命令 net start mysql ,启动MySQL服务。
使用临时密码初次登陆MySQL。登录命令为mysql -u root -h localhost -P 3306 -p。
密码就是.err文件中的临时密码!
登录成功:
修改root用户的登录密码(如,可以设置为123456)。
命令:alter user 'root'@'localhost' identified by '123456';
修改成功:
使用quit或exit命令退出MySQL。
配置文件里面my.ini的内容:
[client]
# 设置mysql客户端连接服务端时默认使用的端口
default-character-set=utf8
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
# 设置3307端口
port = 3307
# 设置mysql的安装目录
basedir=D:\Develop\DataBase\MySQL5.7\mysql-5.7.40-winx64
# 设置mysql数据库数据 存放目录
datadir=D:\Develop\DataBase\MySQL5.7\mysql-5.7.40-winx64\data
# 允许最大连接数
max_connections=10000
# 允许最大连接人数
max_user_connections=1000
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 连接时间一年
wait_timeout=31536000
interactive_timeout=31536000
注:以上端口号为3307,可以设置为默认的3306,这里是因为本人考虑到一些东西,需要预留3306出来
查看字符集
截至目前为止MySQL5.7安装配置都已全部完成。
以上就是MySQL8的环境变量配置
注:若没有进行环境变量的配置,一定要到对应的可执行程序路径下才可以执行相应的脚本命令
配置文件内容(配置内容可以保存下来,后续继续使用,到时只需要改相应数据即可重用):
[client]
# 设置mysql客户端连接服务端时默认使用的端口
default-character-set=utf8
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
# 设置3308端口
port = 3308
# 设置mysql的安装目录
basedir=D:\Develop\DataBase\MySQL8\mysql-8.0.32-winx64
# 设置mysql数据库数据 存放目录
datadir=D:\Develop\DataBase\MySQL8\mysql-8.0.32-winx64\data
# 允许最大连接数
max_connections=10000
# 允许最大连接人数
max_user_connections=1000
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 连接时间一年
wait_timeout=31536000
interactive_timeout=31536000
端口号我这里用的是3308,可以根据自己的需求设定
优化上文教程,一步到位,注册服务的同时给系统指定配置文件
注册命令:mysqld install MYSQL8.0.32 --defaults-file="D:\Develop\DataBase\MySQL8\mysql-8.0.32-winx64\my.ini"
注册完成:
输入命令:mysqld --initialize [可加参数:--console(直接在当前操作控制台生成初始密码)]
生成对应的data文件,在其中找到.err文件对应的password(密码记得备份好先)
启动服务:net start mysql8.0.32(服务名跟注册之时一定要一样)
登录命令:mysql -u root -P 3308 -h localhost -p
端口号一定要改成自己设置的,输入初始密码
修改命令:alter user 'root'@'localhost' identified by '123456';
flush privileges;
截至目前为止MySQL8和MySQL5.7服务器都已然安装配置完成,就是要记得一定要在管理员权限下进行操作,不然,很容易出现各种权限不足错误,导致失败哪里而不自知,特别是对于小白来说,一定要严格按照本教程步骤来,准没错!!!
从上面可以看的出来,一台机器可以部署多个MySQL服务器,而不是只是一台,其中的关键点在于考虑端口号冲突问题,注册的服务名冲突等,只需要解决它们,你就可以不用担心能不能在同一台机器上同时部署多台服务器的问题而苦恼。