SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

问题:在cmd中输入net stop mysql反馈“服务名无效”

WINDOWS下使用Mysql 中碰到的问题记录 Mysql 第1张

 

win+R打开运行窗口,输入

services.msc

查看其中mysql的服务名,比如我的是叫做MySQL80

WINDOWS下使用Mysql 中碰到的问题记录 Mysql 第2张

让我们继续回到最开始的部分,在cmd窗口输入

net start MySQL80

尴尬,又报错了!

WINDOWS下使用Mysql 中碰到的问题记录 Mysql 第3张

百度了才知道原来是因为我们的cmd窗口并不是使用管理员身份打开的,所以才会被系统拒绝访问!

在以管理员身份启动后,输入上面的代码,Mysql启动成功!

WINDOWS下使用Mysql 中碰到的问题记录 Mysql 第4张

 

问题:mysql使用into outfile会报错“ (1290, 'The MySQL server is running with the --secure-file-priv option so it cannot execute this statement')”

WINDOWS下使用Mysql 中碰到的问题记录 Mysql 第5张

原因是因为mysql 5.7新增了一个secure-file-priv参数,这个参数是用来限制LOAD DATA, SELECT ... OUTFILE, and LOAD_FILE()传到哪个指定目录的。

  • secure_file_priv的值为NULL ,表示限制mysql 不允许导入|导出

  • 当secure_file_priv的值为具体目录 ,表示限制mysql 的导入|导出只能发生在设定目录下,目录必须存在,mysql不会创建目录

  • 当secure_file_priv的值没有具体值时,表示不对mysql 的导入|导出做限制

 

那我们怎么在mysql中查看这个参数呢?在cmd使用以下命令即可!

show variables like '%secure%'

WINDOWS下使用Mysql 中碰到的问题记录 Mysql 第6张

 

解决方法:

在mysql文件的my.ini配置文件里面修改,新增一行,输入

secure-file-priv =

WINDOWS下使用Mysql 中碰到的问题记录 Mysql 第7张

保存,重启mysql,注意,不是在cmd当中退出mysql,而是直接关闭mysql服务,在重启,具体的可以百度。

 WINDOWS下使用Mysql 中碰到的问题记录 Mysql 第8张

哈哈,终于修改成功了,Oh,yeah!

官方文档:https://dev.mysql.com/doc/refman/5.7/en/server-system-variables.html#sysvar_secure_file_priv

 ================================ 这里是愉快的分割线 ================================

顺便记录下,mysql导出数据的各项参数意思:

SELECT
    '统计日期',
    '支付金额',
    '成功退款金额' 
FROM
    alfonso INTO OUTFILE 'C:/Users/user/Desktop/XX.csv' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' ESCAPED BY '"' LINES TERMINATED BY '\r\n';

# FIELDS TERMINATED BY ',' 以,作为分隔符
# OPTIONALLY ENCLOSED BY '"' 字段用"号括起
# ESCAPED BY '"' 用"当做转义字符
# LINES TERMINATED BY '\r\n' 以'\r\n'为行间分隔符

 

问题:输出数据中报错‘OS errno 13 - Permission denied’

WINDOWS下使用Mysql 中碰到的问题记录 Mysql 第9张

这个是因为mysql没有读/写文件的权限,找到的解决办法是打开计算机服务,找到mysql服务,点击属性,选择登入,在这里修改下登录身份,选择本地身份保存即可,这里需要重新启动mysql服务!

WINDOWS下使用Mysql 中碰到的问题记录 Mysql 第10张

问题解决!~~~

 

问题:导出的数据是乱码

这个是需要在my.ini文件中修改下参数即可完美解决!

WINDOWS下使用Mysql 中碰到的问题记录 Mysql 第11张

 

问题:导出的数据没有列表头

这就他妈尴尬了,导出来的数据居然不带头,这搞毛线啊!还好天无绝人之路之路,在网络上找到了思路,利用union方法

原来不带头的公式:

select  统计日期,支付金额,成功退款金额 from 表名

现在带头的公式:

select * from (SELECT'统计日期','支付金额','成功退款金额' UNION SELECT 统计日期,支付金额,成功退款金额 FROM 表名)b;   

问题成功解决!

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄