1. 下载压缩包不再赘述,各自对照Mysql 网站 对应服务器下载
2. 环境变量 path 感觉可以不用配置(系统设置 环境变量path 设置mysql压缩包的路径)
3. 解压后
新建数据存放目录,比如 data
4.建立配置文件 如下
my.ini 文件
[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录,此处一定要用双斜杠\\,linux 下 用反单斜杠 / 。具体自己可以测试
basedir=D:\\mysql-8.0.39
# 设置mysql数据库的数据的存放目录
datadir=D:\\mysql-8.0.39\\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=3306
default-character-set=utf8
5. 接下来就是 命令 运行了,做下笔记
mysqld --initialize-insecure --defaults-file="D:\mysql-8.0.39\my.ini"
其中 --defaults-file="D:\mysql-8.0.39\my.ini" 如果 没有加,可以后面 单独运行 (mysqld --defaults-file="D:\mysql-8.0.39\my.ini")
mysql install
以上2个命令结束后,基本上就完成了,服务列表就会出现mysql
6. 启动和 停止命令
net start mysql
net stop mysql
至此 基本完成
7. 我程序中遇到了 sql_mode 的 ONLY_FULL_GROUP_BY 错误,意思是要求 查询中的字段,如果有分组,必须全部在group by 语句里面
不过为了解决这个事情 ,配置文件写了 不生效,然后 只能用命令,实现 ,并重启自己的java服务,
SELECT @@GLOBAL.sql_mode # 查询原来值
# 设置新的值,去掉 ONLY_FULL_GROUP_BY
set global sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';
至此 全部完工,唯一不足就是每次重启要先运行set 脚本
8. 为解决 此问题,看了自己的配置文件 和度娘了一下
原因是 2处的语句 我放到1处,所以不管怎么重启依然不生效,度娘上看到不应该放到1,应该放到2处,保存 重启,结果 好了,特此记录