2016-06-19 32 views
1

Ich bin dabei, einen Webserver mit wenig Verkehr auf einem alten Android-Telefon in einer chroot-Umgebung einzurichten. Ein Debian ist auf dem Telefon installiert und funktioniert einige Monate lang einwandfrei (dies ist also eine Art spezielle Linux-Umgebung).MySQL startet nicht: [ERROR] Fehler beim Erstellen eines Sockets für IPv4 '127.0.0.1': Fehlernummer: 13

Apache2 und Python sind betriebsbereit. Aber

, wenn ich starten mysqld:

[email protected]:~# /usr/sbin/mysqld 
... [Warning] Using unique option prefix key_buffer instead of key_buffer_size is deprecated and will be removed in a future release. Please use the full name instead. 
... [Note] /usr/sbin/mysqld (mysqld 5.5.49-0+deb7u1) starting as process 31419 ... 
... [Warning] Using unique option prefix myisam-recover instead of myisam-recover-options is deprecated and will be removed in a future release. Please use the full name instead. 
... [Note] Plugin 'FEDERATED' is disabled. 
... InnoDB: The InnoDB memory heap is disabled 
... InnoDB: Mutexes and rw_locks use GCC atomic builtins 
... InnoDB: Compressed tables use zlib 1.2.7 
... InnoDB: Using Linux native AIO 
... InnoDB: Initializing buffer pool, size = 128.0M 
... InnoDB: Completed initialization of buffer pool 
... InnoDB: highest supported file format is Barracuda. 
... InnoDB: Waiting for the background threads to start 
... InnoDB: 5.5.49 started; log sequence number 1598476 
... [Note] Server hostname (bind-address): '127.0.0.1'; port: 3306 
... [Note] - '127.0.0.1' resolves to '127.0.0.1'; 
... [ERROR] Failed to create a socket for IPv4 '127.0.0.1': errno: 13. 
... [ERROR] Can't create IP socket: Permission denied 
... [ERROR] Aborting 
... InnoDB: Starting shutdown... 
... InnoDB: Shutdown completed; log sequence number 1598476 
... [Note] /usr/sbin/mysqld: Shutdown complete 

In /etc/mysql/my.conf:

#skip-networking 
... 
socket   = /var/run/mysqld/mysqld.sock 

in/var/run:

drwxrwxrwx 2 mysql mysql 4096 jún 19 10:07 mysqld

Also in der Theorie kann die Steckdose geschrieben sein.

(Wenn ich damit skip-networking mysql startet, aber ich aus Python über pymysql.connect es keine Verbindung herstellen können)

Es ist bemerkenswert, dass/etc/Gruppen unvollständig zu sein scheint, und ich sah, Gruppen ohne einen Namen mit nur einer ID (in Verzeichnislisten), so ist eine Art von Mysql-ist-nicht-in-der-Gruppe-das-ist-ein-Netzwerk-Ressource-Typ-Problem denkbar.

Andere Netzwerk mit Programmen, einschließlich Apache2 arbeiten.

PS Aktivierung von Python zum Herstellen einer Verbindung mit skip-networking aktiviert sollte eine Problemumgehung sein.

Antwort

2

Dies liegt wahrscheinlich daran, dass Ihr Android-Kernel mit CONFIG_ANDROID_PARANOID_NETWORK kompiliert wurde. Sie können es beheben, indem Sie den mysql-Benutzer den Gruppen aid_inet und aid_net_raw hinzufügen.

vor:

[[email protected] ~]$ mysqld 
2017-04-16 8:25:07 4143896512 [Note] mysqld (mysqld 10.1.22-MariaDB) starting as process 6995 ... 
2017-04-16 8:25:08 4143896512 [Note] InnoDB: Using mutexes to ref count buffer pool pages 
2017-04-16 8:25:08 4143896512 [Note] InnoDB: The InnoDB memory heap is disabled 
2017-04-16 8:25:08 4143896512 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins 
2017-04-16 8:25:08 4143896512 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier 
2017-04-16 8:25:08 4143896512 [Note] InnoDB: Compressed tables use zlib 1.2.11 
2017-04-16 8:25:08 4143896512 [Note] InnoDB: Using Linux native AIO 
2017-04-16 8:25:08 4143896512 [Note] InnoDB: Using generic crc32 instructions 
2017-04-16 8:25:08 4143896512 [Note] InnoDB: Initializing buffer pool, size = 128.0M 
2017-04-16 8:25:08 4143896512 [Note] InnoDB: Completed initialization of buffer pool 
2017-04-16 8:25:08 4143896512 [Note] InnoDB: Highest supported file format is Barracuda. 
2017-04-16 8:25:08 4143896512 [Note] InnoDB: 128 rollback segment(s) are active. 
2017-04-16 8:25:08 4143896512 [Note] InnoDB: Waiting for purge to start 
2017-04-16 8:25:08 4143896512 [Note] InnoDB: Percona XtraDB (http://www.percona.com) 5.6.35-80.0 started; log sequence number 1616819 
2017-04-16 8:25:08 4143896512 [Note] Plugin 'FEEDBACK' is disabled. 
2017-04-16 8:25:08 3630140224 [Note] InnoDB: Dumping buffer pool(s) not yet started 
2017-04-16 8:25:08 4143896512 [Warning] Failed to create a socket for IPv6 '::': errno: 13. 
2017-04-16 8:25:08 4143896512 [Warning] Failed to create a socket for IPv4 '0.0.0.0': errno: 13. 
2017-04-16 8:25:08 4143896512 [ERROR] Can't create IP socket: Permission denied 
2017-04-16 8:25:08 4143896512 [ERROR] Aborting 

nach:

[[email protected] mysqld]# usermod -a -G aid_inet,aid_net_raw mysql 
[[email protected] mysqld]# su mysql 
[[email protected] mysqld]$ mysqld 
2017-04-16 9:56:00 4144179136 [Note] mysqld (mysqld 10.1.22-MariaDB) starting as process 7246 ... 
2017-04-16 9:56:00 4144179136 [Note] InnoDB: Using mutexes to ref count buffer pool pages 
2017-04-16 9:56:00 4144179136 [Note] InnoDB: The InnoDB memory heap is disabled 
2017-04-16 9:56:00 4144179136 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins 
2017-04-16 9:56:00 4144179136 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier 
2017-04-16 9:56:00 4144179136 [Note] InnoDB: Compressed tables use zlib 1.2.11 
2017-04-16 9:56:00 4144179136 [Note] InnoDB: Using Linux native AIO 
2017-04-16 9:56:00 4144179136 [Note] InnoDB: Using generic crc32 instructions 
2017-04-16 9:56:00 4144179136 [Note] InnoDB: Initializing buffer pool, size = 128.0M 
2017-04-16 9:56:00 4144179136 [Note] InnoDB: Completed initialization of buffer pool 
2017-04-16 9:56:00 4144179136 [Note] InnoDB: Highest supported file format is Barracuda. 
2017-04-16 9:56:00 4144179136 [Note] InnoDB: 128 rollback segment(s) are active. 
2017-04-16 9:56:00 4144179136 [Note] InnoDB: Waiting for purge to start 
2017-04-16 9:56:00 4144179136 [Note] InnoDB: Percona XtraDB (http://www.percona.com) 5.6.35-80.0 started; log sequence number 1616869 
2017-04-16 9:56:00 4144179136 [Note] Plugin 'FEEDBACK' is disabled. 
2017-04-16 9:56:00 3632237376 [Note] InnoDB: Dumping buffer pool(s) not yet started 
2017-04-16 9:56:00 4144179136 [Note] Server socket created on IP: '::'. 
2017-04-16 9:56:00 4144179136 [Note] mysqld: ready for connections. 
Version: '10.1.22-MariaDB' socket: '/run/mysqld/mysqld.sock' port: 3306 MariaDB Server 

Siehe auch https://stackoverflow.com/a/36451445/4158804

Getestet auf Linux 81fc75b0d254466b 4.4.40-android-x86_64 #2 SMP PREEMPT Fri Jan 13 22:40:54 CST 2017 x86_64 GNU/Linux in einem Archlinux chroot mit mysql Ver 15.1 Distrib 10.1.22-MariaDB, for Linux (i686).

+0

Wow, arbeitete auch für mich. Beachten Sie, dass es funktionierte, selbst wenn die Gruppe aid_net_raw nicht existiert und ich sie manuell hinzufügen musste, indem ich den Link erwähnte. –