首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在UbuntuServer20.04LTS上成功地安装MySQL 8.0和lower_case_table_names=1?

如何在UbuntuServer20.04LTS上成功地安装MySQL 8.0和lower_case_table_names=1?
EN

Ask Ubuntu用户
提问于 2020-07-23 14:03:43
回答 2查看 11.5K关注 0票数 2

让MySQL与lower_case_table_names=1一起运行似乎是一件很麻烦的事情,如下所示:

我试图在UbuntuServer20.04LTS上安装MySQL 8.0.19。无法在mysql初始化之后设置lower_case_table_names=1,这是在从包存储库安装时自动发生的。

根据文档sysvar_更低_案例_表格_名字\服务器系统变量

但是,对于Debian和Ubuntu上的APT安装,服务器是为您初始化的,并且没有机会预先在选项文件中配置设置。因此,在安装debconf-set-selection之前,必须使用MySQL实用程序,使用APT来启用lower_case_table_names。为此,在安装MySQL之前,请使用APT: sudo debconf set- select <<<运行此命令"mysql-server mysql-server/小写表名选择已启用“。

我在一个新安装的UbuntuServer20.04上这样做,然后运行sudo apt-get install mysql-server,但它没有将lower_case_table_names更改为1。

如果有的话,我做错什么了?如何成功地安装MySQL 8.0,并将lower_case_table_names设置为1?

EN

回答 2

Ask Ubuntu用户

回答已采纳

发布于 2020-07-24 08:13:08

到目前为止,我可以让它使用一个解决方案:在MySQL安装后用lower_case_table_names的新值重新初始化它。以下是所需的步骤:

  1. 安装MySQL: sudo apt-get更新sudo apt-get安装mysql-server -y
  2. 停止MySQL服务: sudo服务mysql停止
  3. 删除MySQL数据目录: sudo -rf /var/lib/mysql
  4. 重新创建MySQL数据目录(是的,仅删除其内容是不够的):sudo /var/lib/mysql sudo chown mysql:mysql /var/lib/mysql sudo 700 /var/lib/mysql
  5. lower_case_table_names = 1添加到/etc/mysql/mysql.conf.d/mysqld.cnf中的[mysqld]部分。
  6. 用MySQL重新初始化--lower_case_table_names=1:sudo -默认值-file=/etc/my.cnf-初始化--小写_case_table_name=1-user=mysql--控制台
  7. 启动MySQL服务: sudo服务mysql启动
  8. 检索MySQL用户root的新生成密码: sudo‘临时密码’/var/log/mysql/error.log
  9. 通过以下方式更改mysql用户root的密码: sudo -u root -p并执行: ALTER 'root'@'localhost‘,由’MyNewPa$$w0rd‘标识;之后,还是调用“硬化”脚本: sudo mysql_secure_installation。

之后,您可以通过输入lower_case_table_names外壳来验证MySQL设置:

代码语言:javascript
复制
sudo mysql -u root -p

并执行:

代码语言:javascript
复制
SHOW VARIABLES LIKE 'lower_case_%';

预期产出:

代码语言:javascript
复制
+------------------------+-------+
| Variable_name          | Value |
+------------------------+-------+
| lower_case_file_system | OFF   |
| lower_case_table_names | 1     |
+------------------------+-------+
票数 7
EN

Ask Ubuntu用户

发布于 2021-04-01 13:46:26

在安装mysql服务器之前,还可以在其中创建目录/etc/mysql/mysql.conf.d/和相应的mysqld.cnf

如果您在lower_case_table_names = 1中配置mysqld.cnf,然后安装服务器,它将以小写进行初始化。

票数 1
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1261422

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档