【linux&&mysql8.0】linux 中mysql8.0数据库忽略大小写

问题描述:

Linux安装和启动Mysql8.0之后,在部署云服务器时出现数据库表缺失。

原因是系统使用的flowable6.7.2。

数据库中存储的是小写的数据库名,flow able查询时使用的是大写的表名,而Linux的MySQL又区分字母大小写,导致数据库表缺失

解决办法:

 1.找到MySQL的数据存储位置

/这是我的数据MySQL安装路径
/usr/local/mysql/mysql-8.0/

2.删除该目录下的data文件夹

rm -rf data

 并停止运行MySQL

systemctl stop mysql

3.找到my.cnf文件 

vi /etc/my.cnf

将下面的代码粘贴到你的my.cnf文件内

[mysqld]
lower_case_table_names=1
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL.

[mysqld]
lower_case_table_names=1
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M

# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin

# These are commonly set, remove the # and set as required.
basedir = 你的安装路径
datadir = 数据存储路径
# port = .....
# server_id = .....
# socket = .....

# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M 
symbolic-links=0
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

4.重新初始化MySQL数据库

./mysqld --user=mysql --basedir=/usr/local/mysql-8.0 --datadir=/usr/local/mysql-8.0/data/ --initialize

5.得到临时密码

 6.添加mysqld服务到系统  

cp -a ./support-files/mysql.server /etc/init.d/mysql

7.授权以及添加服务     

chmod +x /etc/init.d/mysql
 
chkconfig --add mysql

8.启动mysql

systemctl start mysql

9.将mysql命令添加到服务 

ln -s /usr/local/mysql-8.0/bin/mysql /usr/bin

10.登录mysql  mysql -uroot -p 密码使用之前随机生成的密码

mysql -u root -p

11.修改密码

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

12.刷新服务

flush privileges;

13.切换数据库

use mysql

14.允许所有IP远程访问并刷新服务

update user set host='%' where user='root';
 
flush privileges;

后半段参考

亮亮同學linux 安装mysql8.0 超详细图文教程linux 安装mysql8.0 超详细图文教程_linux安装mysql8.0.26步骤_亮亮同學的博客-CSDN博客

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要在Linux上安装MySQL 8.0并取消大小写敏感,可以按照以下步骤进行操作: 1. 首先,按照亮亮同学的教程,安装MySQL 8.0。可以参考引用的详细图文教程。 2. 安装完成后,将mysqld服务添加到系统。使用以下命令将mysql.server复制到/etc/init.d/mysql目录下: ``` cp -a ./support-files/mysql.server /etc/init.d/mysql ``` 3. 授权并添加服务。使用以下命令修改权限和添加服务: ``` chmod x /etc/init.d/mysql chkconfig --add mysql ``` 4. 启动MySQL服务。使用以下命令启动MySQL: ``` systemctl start mysql ``` 5. 将mysql命令添加到系统路径。使用以下命令创建符号链接: ``` ln -s /usr/local/mysql-8.0/bin/mysql /usr/bin ``` 6. 登录MySQL。使用以下命令登录到MySQL: ``` mysql -uroot -p ``` 7. 修改密码。使用以下命令修改root用户的密码: ``` ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码'; ``` 8. 刷新服务。使用以下命令刷新MySQL服务: ``` flush privileges; ``` 9. 切换到mysql数据库。使用以下命令切换到mysql数据库: ``` use mysql; ``` 10. 允许所有IP远程访问并刷新服务。使用以下命令更新用户权限并刷新MySQL服务: ``` update user set host='%' where user='root'; flush privileges; ``` 如果你想取消MySQL大小写敏感设置,可以按照以下步骤进行操作: 1. 停止MySQL服务。使用以下命令停止MySQL服务: ``` service mysql stop ``` 2. 编辑MySQL配置文件。使用编辑器打开/etc/my.cnf文件,并在[mysqld]部分添加以下内容: ``` lower_case_table_names=1 ``` 3. 重新初始化MySQL。使用以下命令重新初始化MySQL: ``` mysqld --user=mysql --basedir=/opt/mysql/basedir --datadir=/opt/mysql/datadir --lower-case-table-names=1 --initialize ``` 4. 启动MySQL服务。使用以下命令启动MySQL服务: ``` service mysql start ``` 5. 修改密码。使用以下命令登录到MySQL并修改root用户的密码: ``` mysql -u root -p(临时密码) ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码'; ``` 6. 重新创建用户和授权。使用以下命令创建新的用户并授权: ``` create user '用户名'@'%' IDENTIFIED WITH mysql_native_password BY '密码'; grant all on *.* to '用户名'@'%'; ``` 请注意,在取消大小写敏感设置之前,请确保备份所有数据库数据。取消大小写敏感设置会导致数据丢失。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [【linux&&mysql8.0linux mysql8.0数据库忽略大小写](https://blog.csdn.net/qq_40946177/article/details/130078399)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [MySQL8.0表名大小写问题(Linux)](https://blog.csdn.net/tongxin_tongmeng/article/details/128293686)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值