两个mysql 的my.ini文件需要 配置不同的端口。
[mysqld]
设置3307端口
port=3307
设置mysql的安装目录
basedir=F:\mysql-5.7.24-winx64 # 切记此处一定要用双斜杠\,单斜杠我这里会出错,不过看别人的教程,有的是单斜杠。自己尝试吧
设置mysql数据库的数据的存放目录
datadir=F:\mysql-5.7.24-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
#明确时间戳默认值 不加有警告 有风险
explicit_defaults_for_timestamp=true
[mysql]
设置mysql客户端默认字符集
default-character-set=utf8
[client]
设置mysql客户端连接服务端时默认使用的端口
port=3307
default-character-set=utf8
注意 client 这里的port 和mysqld 下方的port两处。
1.此时在环境变量中随意配置一个mysql的路径,(在PATH中配置%MYSQL_HOME%\bin) ,登录的时候 mysql -uroot -p****** -P3307 指定端口号,就可以区分两个不同的mysql.
2.或者也可以不用配置环境变量,命令行中需要先进入数据库的bin目录,然后 mysql -uroot -p***** 不需要指定端口号,就可以登录相应的数据库。
=============================================================================================以上的行不通,留作纪念。
=============================================================================================
接下来又找了一篇文章,试一试先:
=============================================================================================
首先,MySQL的安装过程是有很多坑的。可能由于系统、版本、环境的不同等遇到很多问题,这时候咱们都得禁下心来解决,包括查百度,重装等等等等方法。好吧,这里介绍一下我安装MySQL的过程与经验,同时也对可能发生异常的地方和解决方法进行说明,系统是Windows10,安装方法是解压安装,MySQL版本是8.0.11和5.7.25的64位版,没错,我在一台电脑上装了两个MySQL(手动滑稽)。这里先讲MySQL8.0的安装,然后说一下同时安装两个MySQL的注意事项。
1.下载
官网链接:https://dev.mysql.com/downloads/installer/
百度网盘分享:
MySQL8.0.11:链接:https://pan.baidu.com/s/11QL085cf1XIDMNKbNlV45w 提取码:nde6
MySQL5.7.25:链接:https://pan.baidu.com/s/1KWSCwOnc8FscB2Cct4l2Zg 提取码:hk1s
2.解压与添加配置文件
将下载的压缩包解压到你指定的目录比如我的是E:\software\MySQL\mysql-8.0.11-winx64
在解压目录的bin目录中创建配置文件my.ini,里面写入这些配置
MySQL Server Instance Configuration File
[client]
设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#设置3306端口
port=3306
设置mysql的安装目录
basedir =“E:\software\MySQL\mysql-8.0.11-winx64”
设置mysql数据库的数据的存放目录
datadir =“E:\software\MySQL\mysql-8.0.11-winx64\data”
tmpdir =“E:\software\MySQL\mysql-8.0.11-winx64\data”
socket=“E:\software\MySQL\mysql-8.0.11-winx64\data\mysql.sock”
log-error=“E:\software\MySQL\mysql-8.0.11-winx64\data\mysql_error.log”
设置mysql服务端默认字符集
character-set-server=utf8
创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
default-tmp-storage-engine=INNODB
#server_id = 2
#skip-locking
允许最大连接数
max_connections=1000
table_open_cache=256
query_cache_size=32M
tmp_table_size=32M
thread_cache_size=8
innodb_data_home_dir=“E:\software\MySQL\mysql-8.0.11-winx64\data”
innodb_flush_log_at_trx_commit =1
innodb_log_buffer_size=128M
innodb_buffer_pool_size=128M
innodb_log_file_size=10M
innodb_thread_concurrency=16
innodb-autoextend-increment=1000
join_buffer_size = 128M
sort_buffer_size = 32M
read_rnd_buffer_size = 32M
max_allowed_packet = 32M
explicit_defaults_for_timestamp=true
#sql-mode=“STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION”
skip-grant-tables
#sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
注意这里就有坑了,首先你需要把我在这个文件里面写的路径写成你的路径,从上面这个文本可以很方便看到总共有6处路径需要修改。其次由于你的电脑实际情况的不同,这里面的有些配置可能需要修改,所以当你之后的安装过程有异常一定要想到可能是配置文件中有些配置不同
3.配置环境变量
如果想安装两个MySQL请跳过这一步,原因是两个版本的可执行文件mysqld是不同的
正常情况下配置环境变量还是好一些,方法如下
1.右键点击我的电脑->属性->高级系统设置->环境变量->系统变量->新建,变量名是MySQL_HOME,路径是E:\software\MySQL\mysql-8.0.11-winx64,同样注意些你自己的路径
2.在系统变量下找到path,点击编辑,新建填写%MySQL_HOME%\bin
4.开启本地网络
这一步有的电脑也不需要,所谓开启本地网络就是使我们的系统认可localhost就是127.0.0.1
可以查看一下这个文件C:\Windows\System32\drivers\etc\hosts的下图蓝色标记位置是否有#注释标记,如果有,请跟我来
首先你需要在cmd输入net user administrator /active:yes,关闭后按快捷键win+L,重新登录系统时选择后台用户登录系统,进入到C:\Windows\System32\drivers\etc\hosts删除掉localhost 127.0.0.1前的注释符#
c6403c753bf18544bd1688751bc992c821a.jpg
这一步是有一些麻烦,但是对于一些电脑确是必须的,比如我的(手动大哭)
5.注册mysql服务,初始化data目录,启动服务
终于到了最关键的一步,也是最可能发生异常的一步,在这一步发生异常可能是你的配置文件有问题。可能是环境配置有问题,可能是没有开启本地网络,当然最可能是因为不同情况下的命令不同。这些都需要我们耐心查找问题,一般都是通过复制异常提示,然后百度慢慢摸索出来的,第一次安装MySQL平均需要一周并不惊奇
1.以管理员身份打开cmd,也就是在cmd上右键以管理员身份运行
2.进入MySQL运行目录,即在cmd输入cd E:\software\MySQL\mysql-8.0.11-winx64\bin,有的电脑可能还要再输入E:
3.注册MySQL服务,即输入mysqld --install MySQL8.0,服务名也就是MySQL8.0可以自己取,不过要记得之后的输入要对应
4.初始化data目录,即输入mysqld --initialize --user=mysql --console
通常初始化data成功后cmd会出来一部分提示,注意这里面有你的MySQLroot用户的临时密码,之后要用,你可以先保存下来
如下图中的标蓝部分
d5670f9edc5e2b10b6f210532b6362d6e52.jpg
5.启动服务,即输入net start mysql8.0,反之可通过net stop mysql8.0停止服务
如果成功启动了服务则安装MySQL就成功了一半
6.修改root用户初始密码
用前面保存的临时密码代入下面这条命令
mysqladmin -uroot -p之前复制的临时密码 password 你要设置的密码
比如输入mysqladmin -uroot -pyTna?nPor1i+ password 123456
7.登录数据库
1.cmd下进入MySQL安装目录即cd E:\software\MySQL\mysql-8.0.11-winx64\bin
2.输入命令mysql -uroot -p,然后就会有让你输入密码的提示,输入你设的密码就能成功登陆了
当然,一下子登录不成功也是有可能的,这时候还是慢慢找问题吧(手动遮脸)
这是我成功安装并登录的cmd截图
9ab8c8eb81bccb2faf9b7e659236f523858.jpg
8.关于一台电脑上同时安装两个MySQL
关于一台电脑上同时安装两个MySQL,比如我的电脑上既有MySQL8.0.11又有MySQL5.7.25,当然也可以安装两个相同版本的。一般情况下是没有安装两个MySQL的需求的,所以这是一个特别需求
其实安装两个MySQL也是在安装完了一个后,再安装另一个,即再按照上面的流程走一遍,不过有几个地方需要注意
1.这时候最好不要配置环境变量,也就是两个MySQL都不配环境变量,原因之前解释过。当然这也意味着每次你输入mysql相关命令都要先到可执行目录即cd E:\software\MySQL\mysql-8.0.11-winx64\bin或cd E:\software\MySQL\mysql-5.7.25-winx64\bin
2.配置文件中port=3306,安装第二个时可以改为port=3307,防止端口占用,但是我的没有改。主要是之前实验的时候发现改了之后登陆时发生了错误,所以两个都用3306端口的话,也就意味着你同时只能有一个MySQL服务在运行,但是也就是先关闭再运行的事,不麻烦
3.安装第二个之前请先关闭之前的那个MySQL服务,即net stop mysql8.0或者是在右键我的电脑->管理->服务中找到MySQL8.0关闭之,以后开启服务也可在这里开启,不必再用cmd开启
4.cmd输入命令时请先进入第二个MySQL的可执行目录,如cd E:\software\MySQL\mysql-5.7.25-winx64\bin
5.注册服务时,请使用不同的服务名如mysqld --install MySQL5.7
最后我的第二个MySQL即MySQL5.7安装成功截图
f5de40d370c66fa314cb7419cda513845f0.jpg
9.MySQL常见用户操作
1.进入运行目录cd E:\software\MySQL\mysql-8.0.11-winx64\bin
2.开启/关闭服务net start mysql8.0 /net stop mysql8.0
3.创建用户create user ‘用户名’@‘localhost’ identified by ‘密码’;
4.授予用户全部权限grant all privileges on . to ‘用户名’@‘localhost’;
5.刷新权限FLUSH PRIVILEGES;
6.创建非本地用户create user ‘用户名’ identified by ‘密码’;
7.授予用户有限权限grant all privileges on so.* to ‘用户名’@’%’
10.MySQL常见命令
1.创建数据库CREATE DATABASE 数据库名 CHARACTER SET utf8;
2.进入数据库USE 数据库名;
3.。。。。。。。。。。大家可以在菜鸟教程,csdn等网站或官网上具体了解(手动摊手表示没力气了)
最后,感谢CCTV