如何将 mysqld 作为常规非守护程序运行?

Jus*_*ove 5 unix mysql sockets

我想运行 mysql 的本地副本,以保持软件开发环境隔离。但是,我似乎无法启动 mysqld 服务器。

我已经创建了一个数据库目录mysql_install_db。我发现我需要一个套接字文件,以及如何指定路径。然而,mysqld 不断报告它无法找到或打开该文件。

/path/to/mysqld --datadir=./db/mysql --socket=./tmp/mysqld.sock
Run Code Online (Sandbox Code Playgroud)

(剪断)

130102 9:54:28 [ERROR] Can't start server : Bind on unix socket: No such file or directory
130102 9:54:28 [ERROR] Do you already have another mysqld server running on socket: ./tmp/mysqld.sock ?
Run Code Online (Sandbox Code Playgroud)

Jus*_*ove 4

尽管 datadir 可以保持相对路径,但套接字文件需要使用完全限定的路径来指定。

/path/to/mysqld --datadir=./db/mysql --socket=/Users/jlove/myproject/tmp/mysqld.sock
Run Code Online (Sandbox Code Playgroud)