今天遇到了一个很奇怪的问题,就是在cmd窗口数据库可以正常访问然后MySQL 8.0 Command Line Client 打开或者闪退。有可能是缺少my.ini,但是我的是自己写过的,然后又查看了MySQL的配置文件发现也没问题,但是就是打不开。后来发现把时区的位置放错地方了。default-time-zone='+08:00'不能放在[mysql]下面,要放在mysqld下面,否则就和我的一样,cmd可以打开,MySQL 8.0 Command Line Client 打开或者闪退(切记,切记)。
MySQL 8.0版本的数据库在进行数据库连接的时候需要配置时区。然后为了省事,我们可以在my.ini中进行了配置(在这个地方配置以后就不需要连接的时候会默认这个时区)
安装MySQL的时候可能没有my.ini这个文件可以自己写,如下所示复制下面的内容(目录需要改成自己的安装目录)
[mysqld]
# 设置3306端口
port=3306
# 自定义设置mysql的安装目录,即解压mysql压缩包的目录
basedir=D:\Program Files\MySQL\MySQL Server 8.0
# 自定义设置mysql数据库的数据存放目录
datadir=D:\Program Files\MySQL\MySQL Server 8.0\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客户端的时区
default-time-zone='+08:00'
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口和默认字符集
port=3306
default-character-set=utf8
改完以后需要重新启动MySQL服务器 ,更改的配置才能生效。我的电脑右键-管理-服务-MySQL