如何在Ubuntu 16.04上安装mysql


8

我下面这个对Ubuntu 14.04数字海洋教程在Ubuntu 16.04安装mysql了我的Rails项目。我可能错误地假设程序是相同的。

但是,当我运行命令时sudo mysql_install_db,出现以下错误:

2016-06-15 18:40:36 [WARNING] mysql_install_db is deprecated. Please consider switching to mysqld --initialize
2016-06-15 18:40:36 [ERROR]   The data directory needs to be specified.

如何完成设置?过去,我在Ubuntu 14.04上多次成功地遵循相同的步骤。


4
如果您按照建议执行该怎么办mysqld --initialize
乔斯

2
@Jos它给出以下错误:mysqld: Can't create directory '/var/lib/mysql/' (Errcode: 17 - File exists) 2016-06-15T14:00:28.483462Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). 2016-06-15T14:00:28.484374Z 0 [ERROR] Aborting
Jawad Khawaja

2
您可能可以通过删除目录/var/lib/mysql并重新运行该--initialize过程来解决该问题。
乔斯

1
谢谢你!我担心它可能会引起问题,因为其中包含许多文件。但这行得通。我已经完成安装。
贾瓦德·卡瓦贾

@Jos您应该发表评论作为答案。
字节指挥官

Answers:


9

MySQL服务器的安装大致包括三个步骤:1)打开软件包装;2)创建一个默认数据库;3)创建一个默认用户/密码(并将其存储在数据库中)。

如果您不小心丢失了数据库文件(通常位于中/var/lib/mysql),则可以重新启动而无需完全重新安装服务器软件包。这是通过命令完成的mysqld --initialize。如果在数据库就位时运行此命令,它将报告错误(“文件已存在”),并且不会尝试覆盖数据库。但是,如果不确定安装过程是否正确完成,则可以删除目录/var/lib/mysql并重新初始化数据库。

--initialize标志将使MySQL生成root用户和随机密码,然后将其写入日志文件。有关更多信息,请参见man mysqld


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.