docker mysql my.ini_windows安装多个mysql&Docker安装MySQL5.7

本文详细介绍了如何在Windows上安装并配置多个MySQL实例,包括修改my.ini配置文件,设置不同端口和服务名。同时,还讲解了使用Docker安装MySQL5.7的步骤,包括数据目录挂载、配置文件定制和权限设置。
摘要由CSDN通过智能技术生成

windows安装多个mysql

--安装第1个mysql

1.在官网上面下载mysql

2.解压(这里最好不要放在系统盘,原因你懂得)

3.添加环境变量到path,本机的是E:\mysql-5.7.21\bin;注意不要出现中文字符的情况

4.配置,修改解压目录下的 my.ini文件 my.ini文件自己手动添加

[Client]

#设置3306端口

port=3306

[mysql]

#设置mysql客户端默认字符集

default-character-set=utf8

[mysqld]

#设置3306端口

port = 3306

#设置mysql的安装目录

basedir=E:\mysql-5.7.21-winx64

#设置mysql数据库的数据的存放目录

datadir=E:\mysql-5.7.21-winx64\data

#允许最大连接数

max_connections=200

#服务端使用的字符集默认为8比特编码的latin1字符集

character-set-server=utf8

#创建新表时将使用的默认存储引擎

default-storage-engine=INNODB

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

#开启打印错误日志

log_error=E:\mysql-5.7.21-winx64\error\log_error.txt

5.安装mysql服务并启动之:(一定要以管理员权限运行cmd)

--以管理员身份打开cmd窗口后,将目录切换到你解压文件的bin目录

--参考,windows系统可能不识别-install

--mysqld -install //注册服务

--mysqld -remove //卸载服务

--注册服务到windows服务,需要以管理员身份运行cmd

mysqld install

net start mysql

--执行完后,MySQL会自建一个data文件夹,并且建好默认数据库,登录的用户名为root,密码为空

mysqld --initialize-insecure --user=mysql

net start mysql

--退出管理员窗口,用普通cmd窗口打开,运行cmd

mysql -uroot -p 然后不输入密码,回车

--查看一下编码

show variables like 'character_set%';

--mysql 修改密码为123456

mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');

-------------------------------------------------------------------

--安装第2个mysql

1.解压mysql-5.7.29-winx64.zip

2.修改my.ini的配置文件内容

[Client]

#设置3316端口

port=3316

[mysql]

#设置mysql客户端默认字符集

default-character-set=utf8

[mysqld]

#设置3316端口

port = 3316

#设置mysql的安装目录

basedir=E:\mysql-5.7.29-3316

#设置mysql数据库的数据的存放目录

datadir=E:\mysql-5.7.21-winx64\data

#允许最大连接数

max_connections=200

#服务端使用的字符集默认为8比特编码的latin1字符集

character-set-server=utf8

#创建新表时将使用的默认存储引擎

default-storage-engine=INNODB

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

#开启打印错误日志

log_error=E:\mysql-5.7.29-3316\error\log_error.txt

3.把第二个MySQL服务配置环境变量,E:\mysql-5.7.29-3316\bin 添加到系统变量path中。

--用管理员身份进入到第二个MySQL的bin目录下,注册MySQL服务:

--初始化数据:

cd /d E:\mysql-5.7.29-3316\bin

mysqld --initialize-insecure

--注册成名称为MYSQL3316的系统服务名称:

mysqld install mysql3316 --defaults-file=“E:\mysql-5.7.29-3316\my.ini”

--启动mysql3316服务

net start mysql3316

--查看注册变服务路径:用E:\mysql-5.7.21-winx64的mysqld,否则mysql3316服务无法启动:发生系统错误 193,应该是识别了第1个mysql的环境变量

\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MYSQL3316,修改ImagePath的数据值为MySQL服务的对应的安装路径:

E:\mysql-5.7.21-winx64\bin\mysqld --defaults-file=E:\mysql-5.7.29-3316\my.ini mysql3316

--若需要删除mysql3316服务

net stop mysql3316

sc delete mysql3316

--删除相关注册表信息,重启电脑后被删除的服务彻底消失

在Win7开始菜单栏搜索 regedit 进入注册表编辑器(在cmd下输入此命令也是可以打开的)

\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\services\eventlog\Application\MySQL

--win10对应目录

\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services\MySQL

--4.

--不用密码登录

cd /d E:\mysql-5.7.29-3316\bin

mysql -u root -p

use mysql;

--update user set password=password(“123456”) where user=“root”;

--无password,格式为password(“123456”) ,否则mysql服务会被破坏且无法登陆

update user set authentication_string=password(“123456”) where user="root";

select user,host,authentication_string from user;

flush privileges;

quit;

-----------------------------------------------------------

--如果出现以下问题,请按如下操作:

--1.

mysql -u root -p

两次回车;返回ERROR 1045(28000):Access denied for user 'root'@'localhost' (using password: NO) 用户root拒绝访问。

此时会提示密码错误,打开data目录,用记事本打开.err文件,搜索password会找到临时生成的密码,复制。把密码复制过去,即可进入,但是进入之后用show databases;查看数据库的时候会出现ERROR 1820(HY000): You must reset your password using ALTER USER statement before executing this statement. (要重置密码才可以)

这时输入:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';

转载文章:http://blog.csdn.net/you_are_my_dream/article/details/53022328

--2.

mysql 安装问题一:由于找不到MSVCR120.dll,无法继续执行代码.重新安装程序可能会解决此问题。

这种错误是由于未安装vcredist(microsoft visual c++ 2013 redistributable)引起的

下载 vcredist 地址:https://www.microsoft.com/zh-CN/download/details.aspx?id=40784

----------------------------------------------------------------------------------------------------------------------------

Docker安装MySQL5.7

docker pull mysql:5.7

docker images

#先让容器在后台运行,并取个别名为mysql5.7,此时还没有修改配置文件

docker run --name mysql5.7 -e MYSQL_ROOT_PASSWORD=Hangzhou@123 -d mysql:5.7

docker ps

#查看容器内部的配置文件:conf.d my.cnf my.cnf.fallback mysql.cnf mysql.conf.d

docker exec mysql5.7 ls /etc/mysql

#进入容器终端

docker exec -it mysql5.7 /bin/bash

#进入mysql终端,并输入密码

mysql -uroot -pHangzhou@123

grant all privileges on *.* to root@'%' identified by 'Hangzhou@123';

flush privileges;

quit;

exit

#在宿主机创建配置文件目录

mkdir -p /root/mysql5.7/conf

#复制容器内部的配置文件到宿主机

docker cp -a mysql5.7:/etc/mysql/ /root/mysql5.7/conf

#在宿主机创建数据目录

mkdir /root/mysql5.7/data

#赋予宿主机/root/mysql5.7目录最高读写权限

chmod -R 777 /root/mysql5.7

#删除mysql5.7容器,-f参数是强制删除运行中的容器

docker rm -f mysql5.7

#重新运行容器,映射端口,并挂载配置文件、数据文件,设置账号密码,并设置编码方式为UTF-8

docker run --restart=always -p 3306:3306 --name mysql5.7 -v /root/mysql5.7/conf:/etc/mysql -v /root/mysql5.7/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=Hangzhou@123 -d mysql:5.7 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci

#开放宿主机防火墙3306端口

firewall-cmd --zone=public --add-port=3306/tcp --permanent

firewall-cmd --reload

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值