gpt4 book ai didi

mysql - MySQL 8.0.12 中的lower_case_table_names 设置

转载 作者:行者123 更新时间:2023-12-04 16:01:52 26 4
gpt4 key购买 nike

我刚刚在 Ubuntu 16.0.4 中编译了 MySQL 8.0.12 版本。

按照网站中的说明制作以下 my.cnf 文件后:

[mysqld]
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
port=3306
log-error=/usr/local/mysql/data/localhost.localdomain.err
user=mysql
secure_file_priv=/usr/local/mysql/mysql-files
local_infile=OFF

log_error = /var/log/mysql/error.log

# Remove case sensitive in table names
lower_case_table_names=1

我收到以下错误:
2018-08-11T19:45:06.461585Z 1 [ERROR] [MY-011087] [Server] Different lower_case_table_names settings for server ('1') and data dictionary ('0').

我应该更改什么才能使数据字典与服务器设置保持一致?

最佳答案

到目前为止,我可以通过一种变通方法(我最初发布在 askubuntu 上)使其工作:通过使用 lower_case_table_names 的新值重新初始化 MySQL安装后。以下步骤适用于新安装。如果数据库中已有数据,请先将其导出,以便稍后将其导入:

  • 安装 MySQL:
    sudo apt-get update    
    sudo apt-get install mysql-server -y
  • 停止 MySQL 服务:
    sudo service mysql stop
  • 删除 MySQL 数据目录:
    sudo rm -rf /var/lib/mysql
  • 重新创建 MySQL 数据目录(是的,仅删除其内容是不够的):
    sudo mkdir /var/lib/mysql    
    sudo chown mysql:mysql /var/lib/mysql
    sudo chmod 700 /var/lib/mysql
  • 添加 lower_case_table_names = 1[mysqld] /etc/mysql/mysql.conf.d/mysqld.cnf 中的部分.
  • 使用 --lower_case_table_names=1 重新初始化 MySQL :
    sudo mysqld --defaults-file=/etc/mysql/my.cnf --initialize --lower_case_table_names=1 --user=mysql --console
  • 启动 MySQL 服务:
    sudo service mysql start
  • 为 MySQL 用户检索新生成的密码 root :
    sudo grep 'temporary password' /var/log/mysql/error.log
  • 修改 MySQL 用户密码 root或者通过:
    sudo mysql -u root -p
    并执行:
    ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPa$$w0rd';
    之后,或者无论如何调用“强化”脚本:
    sudo mysql_secure_installation

  • 之后,您可以验证 lower_case_table_names通过进入 MySQL shell 进行设置:
    sudo mysql -u root -p
    并执行:
    SHOW VARIABLES LIKE 'lower_case_%';
    预期输出:
    +------------------------+-------+
    | Variable_name | Value |
    +------------------------+-------+
    | lower_case_file_system | OFF |
    | lower_case_table_names | 1 |
    +------------------------+-------+

    关于mysql - MySQL 8.0.12 中的lower_case_table_names 设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51803216/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com