700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > mysql怎样修改my ini_修改mysql里面的my.ini文件后 如果让这个改动生效?

mysql怎样修改my ini_修改mysql里面的my.ini文件后 如果让这个改动生效?

时间:2019-08-25 08:06:50

相关推荐

mysql怎样修改my ini_修改mysql里面的my.ini文件后 如果让这个改动生效?

比如我们修改了my.ini文件的secure_file_priv变量的值如何让其真正生效?

现在先看下我们系统中的secure_file_priv变量的值

进入mysql输入代码如下

show global variables like 'secure_file_priv';

上面是一句mysql代码所以必须在mysql环境中执行。

从上面可以看到当前mysql中变量secure_file_priv的值是一个路径C:\ProgramData\MySQL\MySQL Server 8.0\Uploads\

,如果这个变量是一个路径值,那你就必须把csv文件上传到这个路径才能够正常使用load命令进行上传否则就会有错误提示。

我们设定secure_file_priv的值得时候有三种选择,分别是三个不同的结果

用记事本方式或者notepad++打开C:\ProgramData\MySQL\MySQL Server 8.0下面的my.ini文件,我们搜索secure(注意不要搜secure_file_priv,否则你搜不到),搜索结果如下:

# Secure File Priv.

secure-file-priv="C:/ProgramData/MySQL/MySQL Server 8.0/Uploads"

这里在我们的搜索结果里,我看到只有这一处出现了给secure-file-priv复制的情况,其他地方没有出现,因此我们只需要改这一个地方的值肯定正确,我们往上翻看,会发现这这个赋值是出现在[mysqld]的下面,如果你的这个赋值在文中出现多次,并且有的赋值在[mysqld]下面,有的不在,那请你修改[mysqld]下面的secure-file-priv值。

我这里情况就比较简单了,我们进行如下修改然后保存这个文件

secure-file-priv=""

然后保存并关闭,我们的my.ini文件

注意这里仅仅是修改了这个文本文件,但这个修改还没有真正起作用,如果你用show 命令去看变量secure_file_priv的值,还是以前的路径值,如何让我们这个修改生效呢。

首先打开我们的mysql服务列表,然后查看那个mysql服务是与这个my.ini文件关联的,也就是看哪个mysql服务是根据这个my.ini文件进行配置的。

到了mysql服务列表页面我们选择一个mysql服务,然后右键点击选择属性,可以看到这个服务的关联ini文件。

可以看到我们创建了好几个mysql服务,但是只能启动其中的一个mysql服务,目前mysqldd服务处于启动状态,我们首先要停止所有的mysql服务

可以在这里点击暂停,如果不管用,可以打开一个cmd窗口输入:net stop mysqldd

这样mysqldd服务就停止了,所有的mysql服务都处于停止状态。

然后我们选择一个mysql服务,然后右键点击选择属性,比如我们选择mysql80服务

把属性中的可执行文件的路径截图,并把文字发过来

"C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld.exe" --defaults-file="C:\ProgramData\MySQL\MySQL Server 8.0\my.ini" MySQL80

从这里可以看到mysql80这个mysql服务是与"C:\ProgramData\MySQL\MySQL Server 8.0\my.ini" 关联的,如果我们修改了这个my.ini文件,然后再启动mysql80服务,我们的修改就会生效,我们试一下。

启动mysql80服务

cmd窗口输入net start mysql80

C:\Windows\system32>net start mysql80

MySQL80 服务正在启动 .

MySQL80 服务无法启动。

服务没有报告任何错误。

请键入 NET HELPMSG 3534 以获得更多的帮助。

查看:1.现在其他的mysql服务都处于停止状态

2.这个cmd窗口是以管理员身份打开的

实在不知道无法启动服务是什么原因导致的

我们输入mysqld --console查看导致这个结果的具体原因

C:\Windows\system32>mysqld --console

-02-20T00:30:47.291318Z 0 [System] [MY-010116] [Server] C:\Program Files\MyS

QL\MySQL Server 8.0\bin\mysqld.exe (mysqld 8.0.18) starting as process 66520

-02-20T00:30:47.317320Z 1 [ERROR] [MY-011011] [Server] Failed to find valid

data directory.

-02-20T00:30:47.318320Z 0 [ERROR] [MY-010020] [Server] Data Dictionary initi

alization failed.

-02-20T00:30:47.319320Z 0 [System] [MY-010910] [Server] C:\Program Files\MyS

QL\MySQL Server 8.0\bin\mysqld.exe: Shutdown complete (mysqld 8.0.18) MySQL Com

munity Server - GPL.

上面的意思是我们找到的data路径是无效的,我们把C:\Program Files\MySQL\MySQL Server 8.0\data这个文件夹下的内容清空,然后再重新启动mysql80服务

我们重新创建一个空白的data文件夹发现还是不行,删除那个data文件夹也不行

如果我们在服务列表页面尝试启动mysql80就会提示本地计算机上的mysql80服务启动后停止。某些服务在未由其他服务或程序使用时将自动停止

考虑到这一系列怪事都是出现在修改my.ini文件之后我们把我们的my.ini文件用notepad++打开,将编码转为ansi,然后保存关闭。

然后重新执行

net start mysql80

这次终于启动成功了。

我们进入mysql再查看一下我们的secure_file_priv变量的值

可以看到现在secure_file_priv的值已经是一个空白字符串了,注意这里不是Null值呀。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。