• mysql5.7文件无法导入数据库的解决方案


    一般是因为my.ini的“secure-file-priv”的设置导致loaddata失败,网上查了许多资料,大部分都是要求注释掉my.ini的:

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

    mysql5.7没有my.ini,只有mydefault.ini,复制改一个就ok了。

    注释完不起效果,于是stack-over-flow上查看到这样一个解决方案:

    http://stackoverflow.com/questions/32737478/mysql-how-to-tackle-secure-file-priv

    用命令SHOW VARIABLES LIKE "secure_file_priv";查看一下uploads设置,结果uploads文件夹压根不存在,手动创建之。

    loadfile尝试仍然失败。

    于是想重启mysql服务,net stop后发现mysql服务压根没起来,net start mysql提示无法启动,服务器没有报告任何错误。

    这种情况一般是缺少data目录,那就进入到mysql5.7的bin目录,用mysqld --initialize重建之,出现错误,提示data目录中有文件存在,可是我mysql5.7目录下没有文件存在啊?这种问题网上压根找不到答案,抓耳挠腮找了半天也不知道错误在哪,

    突然发现my.ini中有个设置:datadir=D:/MySql/data    # 设置mysql数据库的数据的存放目录,必须是data,或者是//xxx/data  

    寻思有没有可能是my.ini捣鬼,于是把my.ini改了个名字,再次mysqld --initialize,data目录初始化成功。

    net start mysql

    再次报错,无服务器没有提示任何错误

    于是用mysqld --console查看详细信息,提示有服务占用了3306端口

    进到系统服务里挨个看,发现有个服务名为mysql5.7,关闭掉

    再次net start mysql,启动成功。

    把my.ini名字改回来,顺利导入数据到表中,至此问题解决。

  • 相关阅读:
    redis基础
    docker日志清理脚本
    Hive修改表的所有者(Owner)
    User xxx does not have privileges for CREATETABLE的解决办法
    Spark读取Hive表中文显示乱码的解决办法
    Go语言之标识符与关键字
    Go语言之数据类型(三)
    bootstrapTable频繁向后台接口发请求
    框架整合疑云
    业务开发中-设计模式使用
  • 原文地址:https://www.cnblogs.com/wangjunyan/p/5516336.html
Copyright © 2020-2023  润新知