我正在尝试使用mysqld在Windows上安装MySQL服务。这是我的命令:
mysqld --install test123 --defaults-file="C:\mysql\my.ini" --verbose --console --explicit_defaults_for_timestamp --innodb=off
所以这就是我想要的:
当我运行上面的命令时,我收到错误消息未知选项'--install'。整个产出:
2013-09-09 14:17:06 3712 [Note] Plugin 'FEDERATED' is disabled.
2013-09-09 14:17:06 3712 [Note] Plugin 'InnoDB' is disabled.
2013-09-09 14:17:06 3712 [ERROR] mysqld: unknown option '--install'
2013-09-09 14:17:06 3712 [ERROR] Aborting
2013-09-09 14:17:06 3712 [Note] Binlog end
2013-09-09 14:17:06 3712 [Note] Shutting down plugin 'partition'
...many "Shutting down plugin" lines...
2013-09-09 14:17:06 3712 [Note] Shutting down plugin 'binlog'
2013-09-09 14:17:06 3712 [Note] mysqld: Shutdown complete
我应该怎么做才能知道mysqld.exe选项--install?
我不知道这是否重要,但在the manual中写道:
在Windows上,如果使用--defaults-file和--install选项启动服务器,则必须先安装--install。否则,mysqld.exe将尝试启动MySQL服务器。
而in this part也是:
如果服务器是使用--defaults-file和--install选项启动的,则--install必须是第一个。
答案 0 :(得分:1)
我发现问题可能出在选项 - verbose --console 。
当我运行此命令时,一切看起来都很好:
答案 1 :(得分:0)
我遇到了完全相同的问题并最终找到了解决方案。
基本上,您不能指定任何其他额外的mysqld选项 除了 my.ini 配置文件的完整路径, 它将包含所有其他“命令行” 参数。
所以在你的情况下,唯一可行的就是这个命令行:
"C:\mysql\mysqld.exe" --install "test123" --defaults-file="C:\mysql\my.ini"
请注意,我指定了 mysqld.exe 可执行文件的完整路径
和 my.ini 配置文件以及所有参数都被完全引用。
这将确保它每次都能正常工作,即使:
就我而言,我试图在另一个端口上安装另一个 MySQL 实例版本,
所以我的准系统 MySQL 配置文件对于默认端口 3306 如下所示:
# Simply change all the port below from 3306 to something else, such as: 3308, 3310, 3312, etc.
# if it was already taken by another MySQL service instance.
#
[client]
port=3306
[mysql]
port=3306
[mysqld]
port=3306
basedir="C:/mysql/"
datadir="C:/mysql/data"
tmpdir="C:/mysql/temp"
secure-file-priv="C:/mysql/upload"
最后,确保使用以下命令初始化丢失的数据文件夹:
"C:\mysql\bin\mysqld.exe" --initialize --verbose --console
mkdir "C:\mysql\temp\"
mkdir "C:\mysql\upload\"
服务启动后,您需要使用控制台上显示的预先生成的密码以 root 身份登录并更改一次。
现在您可以创建数据库架构,然后根据需要调整这个 my.ini 配置文件。