I have installed MySQL server 5.5 on Ubuntu 12.04. I am trying to start MySQL server on a different sock file. By default MySQL runs on /var/run/mysqld/mysqld.sock.
I am trying to run the same server on /var/run/mysqld/mysqld1.sock.
For this I have made the following changes:
- Changes to /etc/mysql/my.cnf
[client]
port = 3306
socket = /var/run/mysqld/mysqld1.sock
[mysqld_safe]
socket = /var/run/mysqld/mysqld1.sock
nice = 0
[mysqld]
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
**socket = /var/run/mysqld/mysqld1.sock**
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
lc-messages-dir = /usr/share/mysql
I also added the following line to /etc/apparmor.d/usr/sbin.mysqld
/var/run/mysqld/mysqld1.sock w,
/var/run/mysqld/mysqld[1-9].sock w,
I also changed the ownership for the directory /var/run/mysqld to mysql user.
ls -lA /var/run/ | grep mysqld
drwxrwxrwx 2 mysql mysql 40 Dec 31 17:24 mysqld
However when I try to start MySQL server I get the following error (As a root user)
$ mysqld --user=mysql --verbose
121231 18:40:56 [Note] Plugin 'FEDERATED' is disabled.
121231 18:40:56 InnoDB: The InnoDB memory heap is disabled
121231 18:40:56 InnoDB: Mutexes and rw_locks use GCC atomic builtins
121231 18:40:56 InnoDB: Compressed tables use zlib 1.2.3.4
121231 18:40:56 InnoDB: Initializing buffer pool, size = 128.0M
121231 18:40:56 InnoDB: Completed initialization of buffer pool
121231 18:40:56 InnoDB: highest supported file format is Barracuda.
121231 18:40:57 InnoDB: Waiting for the background threads to start
121231 18:40:58 InnoDB: 1.1.8 started; log sequence number 1595685
121231 18:40:58 [Note] Server hostname (bind-address): '127.0.0.1'; port: 3306
121231 18:40:58 [Note] - '127.0.0.1' resolves to '127.0.0.1';
121231 18:40:58 [Note] Server socket created on IP: '127.0.0.1'.
**`121231 18:40:58 [ERROR] Can't start server : Bind on unix socket: Permission denied`**
121231 18:40:58 [ERROR] Do you already have another mysqld server running on socket:
/var/run/mysqld/mysqld1.sock ?
121231 18:40:58 [ERROR] Aborting**
121231 18:40:58 InnoDB: Starting shutdown...
121231 18:40:58 InnoDB: Shutdown completed; log sequence number 1595685
121231 18:40:58 [Note] mysqld: Shutdown complete
If I start the server with the default socket file, I am able to start the server. I have googled about this issue but only found solutions suggesting it to be permissions issue. However the permissions seems fine. Some have suggested that AppArmor might be a cause, but I have checked that too - snippet is pasted above.
Can someone provide some clues?
[EDIT]
I see the following output in /var/log/syslog.
Jan 2 12:09:34 praveshp-lt mysqld: 130102 12:09:34 [Note] Plugin 'FEDERATED' is disabled. Jan 2 12:09:34 praveshp-lt mysqld: 130102 12:09:34 InnoDB: The InnoDB memory heap is disabled Jan 2 12:09:34 praveshp-lt mysqld: 130102 12:09:34 InnoDB: Mutexes and rw_locks use GCC atomic builtins Jan 2 12:09:34 praveshp-lt mysqld: 130102 12:09:34 InnoDB: Compressed tables use zlib 1.2.3.4 Jan 2 12:09:34 praveshp-lt mysqld: 130102 12:09:34 InnoDB: Initializing buffer pool, size = 128.0M Jan 2 12:09:34 praveshp-lt mysqld: 130102 12:09:34 InnoDB: Completed initialization of buffer pool Jan 2 12:09:34 praveshp-lt mysqld: 130102 12:09:34 InnoDB: highest supported file format is Barracuda. Jan 2 12:09:35 praveshp-lt mysqld: 130102 12:09:35 InnoDB: Waiting for the background threads to start Jan 2 12:09:36 praveshp-lt mysqld: 130102 12:09:36 InnoDB: 1.1.8 started; log sequence number 1595685 Jan 2 12:09:36 praveshp-lt mysqld: 130102 12:09:36 [Note] Server hostname (bind-address): '127.0.0.1'; port: 3307 Jan 2 12:09:36 praveshp-lt mysqld: 130102 12:09:36 [Note] - '127.0.0.1' resolves to '127.0.0.1'; Jan 2 12:09:36 praveshp-lt mysqld: 130102 12:09:36 [Note] Server socket created on IP: '127.0.0.1'. Jan 2 12:09:36 praveshp-lt mysqld: 130102 12:09:36 [ERROR] Can't start server : Bind on unix socket: Permission denied Jan 2 12:09:36 praveshp-lt mysqld: 130102 12:09:36 [ERROR] Do you already have another mysqld server running on socket: /var/run/mysqld/mysqld1.sock ? Jan 2 12:09:36 praveshp-lt mysqld: 130102 12:09:36 [ERROR] Aborting Jan 2 12:09:36 praveshp-lt mysqld: Jan 2 12:09:36 praveshp-lt mysqld: 130102 12:09:36 InnoDB: Starting shutdown... Jan 2 12:09:36 praveshp-lt kernel: [ 7060.098580] type=1400 audit(1357108776.036:33): apparmor="DENIED" operation="mknod" parent=6702 profile="/usr/sbin/mysqld" name="/run/mysqld/mysqld1.sock" pid=7039 comm="mysqld" requested_mask="c" denied_mask="c" fsuid=116 ouid=116 Jan 2 12:09:36 praveshp-lt mysqld: 130102 12:09:36 InnoDB: Shutdown completed; log sequence number 1595685 Jan 2 12:09:36 praveshp-lt mysqld: 130102 12:09:36 [Note] /usr/sbin/mysqld: Shutdown complete
It says permission denied, however I seem to have set the right permissions.