再将Windows下面的Mysql中的数据迁移到Ubuntu下之后,EF提示找不到表。几经探索才发现Windows下面大小写不敏感,Linux下面Mysql大小写敏感。

按照官方文档提示将lower_case_table_names的值修改为1,但是重新启动Mysql报以下错误:

Job for mysql.service failed because the control process exited with error code.

See "systemctl status mysql.service" and "journalctl -xe" for details.

最终通过https://www.jianshu.com/p/d3cc28c3ed42这篇文章解决了问题,特此记录。

注意:在安装Mysql 8.0.15时测试通过,能通过此方法关闭表名大小写不敏感,但是在Mysql8.0.16下设置失败,无法启动Mysql。

一、安装Mysql

去https://dev.mysql.com/downloads/repo/apt/下载deb包。也可以用wget直接下载:

wget https://dev.mysql.com/get/mysql-apt-config_0.8.12-1_all.deb

sudo dpkg -i mysql-apt-config_0.8.12-1_all.deb

sudo apt-get update

安装Mysql

sudo apt-get install mysql-server

选好之后选择OK退出

选择认证方式,更具自己需要选择。

查看服务是否启动

ps -ef | grep mysql

启动之后应该是这样的

mysql 29734 1 0 11:34 ? 00:00:10 /usr/sbin/mysqld

没有启动的话,手动启动

sudo service mysql restart

二、忽略表名大小写

如果使用默认安装路径,mysqldump命令直接使用。手动设置了安装目录,进入目录,终端 bin/mysqldump 代替 mysqldump

将初始库mysql导出到桌面,保存为mysqldump.sql文件,弹出提示时输入前面填写的root密码。

一定不要忘了这这步,最开始我是直接删除Mysql的数据存放目录。结果导致修改了lower_case_table_namesq启动数据没有用户之类的数据。

导出Myslq数据库mysqldump -h localhost -u root -p mysql > ~/mysqldump.sql

停止服务

sudo service mysql stop

删除 mysql的数据文件

sudo rm -rf /var/lib/mysql

创建同名文件夹并设置权限

sudo mkdir /var/lib/mysql

sudo chown -R mysql:mysql /var/lib/mysql

sudo chmod 750 /var/lib/mysql

编辑配置文件

sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf

在[mysqld]下添加lower_case_table_names=1

[mysqld]

lower_case_table_names=1

pid-file = /var/run/mysqld/mysqld.pid

socket = /var/run/mysqld/mysqld.sock

datadir = /var/lib/mysql

log-error = /var/log/mysql/error.log

然后手动初始化MySQL。

defaults-file默认安装路径为/etc/mysql/my.cnf,手动安装需要更改。

sudo mysqld --defaults-file=/etc/mysql/my.cnf --initialize lower_case_table_names=1 --user=mysql --console

再次查看/var/lib/mysql目录权限

ll -d /var/lib/mysql

如以下则没有问题

drwxr-x--- 5 mysql mysql 4096 12月 25 13:11 /var/lib/mysql/

如果群组和权限不一致再次执行

sudo chown -R mysql:mysql /var/lib/mysql

sudo chmod 750 /var/lib/mysql

重新开启数据库服务

sudo service mysql restart

登陆mysql,密码处直接回车

mysql -u root -p

此时没有密码,直接回车登录。

登录后查询是否更改

SHOW VARIABLES where Variable_name like 'lower%';

mysql> SHOW VARIABLES where Variable_name like 'lower%';

+------------------------+-------+

| Variable_name | Value |

+------------------------+-------+

| lower_case_file_system | OFF |

| lower_case_table_names | 1 |

+------------------------+-------+

2 rows in set (0.01 sec)

没有问题。

查看数据库

mysql> show databases;

+--------------------+

| Database |

+--------------------+

| information_schema |

| mysql |

| performance_schema |

+--------------------+

3 rows in set (0.01 sec)

发现少了sys数据库。

切换到mysql库 ,导入前面导出的mysql库

mysql> use mysql

mysql> source /home/ubuntu/mysqldump.sql

Query OK, 0 rows affected (0.00 sec)

.....

.....

退出Mysql

mysql> exit;

Bye

执行mysql_upgrade命令创建sys库

sudo mysql_upgrade

登陆mysql测试,root密码是安装时设置的密码。

mysql忽略大小写 chmod_Ubuntu18.04下Mysql8.0.15关闭大小写敏感相关推荐

  1. 乌班图mysql8.0安装第一次手工启动_Ubuntu Server 16.04下mysql8.0安装配置图文教程

    Ubuntu Server 16.04下mysql8.0安装配置图文教程 1.从Mysql官网上下载安装文件.有两种方式可供选择: 使用APT安装方式安装 使用完整的安装包进行安装 sudo dpkg ...

  2. mysql忽略大小写配置cnetos_CentOS7下安装MYSQL8.X并设置忽略大小写

    安装 在官网上下载:mysql80-community-release-el7-2.noarch.rpm.安装方式与5.7没有任何区别.详细见:CentOS7下安装MYSQL5.7. 设置忽略大小写 ...

  3. mysql 8.064位安装_windows64位下MySQL8.0.15安装教程图文详解

    先去官网下载点击的MySQL的下载 下载完成后解压 解压完是这个样子 配置系统环境变量 复制解压后的mysql到C盘或者其他磁盘下 我们去系统的环境变量的path里添加一个mysql的配置  指向my ...

  4. mysql8.0.13解压版安装密码设置_windows下mysql8.0.13解压版安装图文教程

    本文为大家分享了mysql8.0.13安装图文教程,供大家参考,具体内容如下 1.1. 下载: 我下载的是64位系统的zip包: 下载地址 下载zip的包 1.2.配置环境变量: 变量名:MYSQL_ ...

  5. mysql8.0.15 linux安装_Linux下mysql 8.0.15 安装配置图文教程以及修改密码

    写这篇博客是为了记住我刚刚安装成功的MySQL8.0.15,之前在网上找了很多博客最终没能成功,然后去google上找了几篇最终装好了,装数据库之前我是重装了服务器系统的,所以这个安装环境是很干净的, ...

  6. mysql安装教程8.0.21安装,Windows系统下MySQL8.0.21安装教程(图文详解)

    安装建议:尽量不要用.exe进行安装,用压缩包安装,对日后的卸载/版本升级更为方便 下载地址:https://dev.mysql.com/downloads/mysql/ 1.点击上面的下载地址得到z ...

  7. docker mysql忽视大小写_Docker安装MySQL忽略大小写问题的问题

    Docker安装MySQL忽略大小写问题的问题 连接MySQL: 查看当前mysql的大小写敏感配置 show global variables like '%lower_case%'; +----- ...

  8. Linux mysql忽略大小写

    mysql表忽略大小写 因为linux下mysql默认是要区分表名大小写的.mysql是否区分大小写设置是由参数lower _ case _ table _ names决定的,其中: lower_ca ...

  9. Linux下安装二进制版mysql-8.0.15

    1.添加用户 ## 添加用户组 groupadd mysql ## 添加用户,指定用户home目录 useradd -g mysql mysql -d /data/mysql ## 解压下载的mysq ...

  10. windows下mysql-8.0.11-winx64解压版配置

    windows下mysql-8.0.11-winx64解压版配置 首先解压下载好的压缩版本, 使用的是社区开源版可以到官网上找到 将解压后mysql的bin文件目录配置系统环境path变量中 . 使用 ...

最新文章

  1. android 屏幕录像
  2. js获取元素节点对象
  3. Java黑皮书课后题第8章:*8.16(对二维数组排序)编写一个方法,使用下面的方法头对二维数组排序。这个方法首先按行排序,然后按列排序
  4. windows IIS的IUSR和IIS_IUSRS 2
  5. 八种不要钱的男士护肤方法 - 生活至上,美容至尚!
  6. Oracle查询结果随机排序(去重,抽检)
  7. RHEL7的安装步骤
  8. 关于华为手机无线调试
  9. MySQL函数 if 的使用
  10. 孙式无极桩站桩要领--林泰年
  11. 学习计算机基本知识,怎样按序学习计算机基本知识
  12. matlab 求取矩阵中值,matlab中取矩阵中指定列的值组成新矩阵
  13. matlab外推预测函数,时间序列模型 (五): 趋势外推预测方法
  14. 授人以渔系列----如何win10安装ffmpeg
  15. Emlog主题:秒拍网主题模板源码
  16. 零信任的三种主流技术【远航】
  17. 分布式网络游戏百万人同时在线服务器架构实现(思想)
  18. 数据结构(C语言描述)——顺序表
  19. 城市公交查询系统c语言,城市公交查询系统城市公查询系统.doc
  20. [Architecture]tumblr.com

热门文章

  1. 粗读《构建之法》后的问题
  2. 进程外Session(用数据库)
  3. 1.恶意软件中的防双开
  4. Clone使用方法详解【转载】
  5. Android消除Toast延迟显示
  6. Linux环境进程间通信(一)管道和FIFO
  7. 创建 Agg 静态链接库
  8. SpringCloud之Ribbon源码分析(一)
  9. Condition梳理和总结
  10. Java 对象布局、大小工具 jar包工具类jol