Portál AbcLinuxu, 9. června 2025 04:10


Dotaz: MariaDB běží ale nevytvoří socket - (HY000/2002): No such file or directory

6.10.2020 14:34 Petr_70 | skóre: 8
MariaDB běží ale nevytvoří socket - (HY000/2002): No such file or directory
Přečteno: 1125×
Odpovědět | Admin
Dobrý den.

Prosím vás o pomoc/radu.
Byl jsem v práci donucen provést kvůli požadavkům aplikací aktualizovat MariaDB na nejnovější verzi 10.5.5 na serveru s OpenSuse Leap 15.

Před aktualizací tam byla tuším verze 10.0.25, která fungovala. Tu aktuální jsem instaloval přímo z repozitářů MariaDB a protože nebyl možný přímý upgrade, původní verzi jsem odinstaloval (zypper remove mariadb mariadb.client) a následně tu novou 10.5.5 obdobným způsobem nainstaloval a spustil.

Mysql spustí bez chyb avšak nikde nevytvoří socket soubor mysql.sock díky čemuž neběžely všechny webové aplikace (apache vracel: "(HY000/2002): No such file or direktory"), což jsem sice "vyřešil" změnou v php setting nastavením "127.0.0.1" na místo původní hodnoty "localhost". Jak známo s tímto nastavením aplikace komunikuji nikoli přes socket ale přímo přes TCP port 3306.

Problém ovšem je, že se nejsem schopen přihlásit do správy databáze přes PhpMyAdmin (viz výše uvedená chyba).

Popravdě nevím co udělat, aby MariaDB server při startu socket vytvořil, resp. co mu v tom brání.. :(

Uvedu několik výpisů:
# netstat -npl|grep mysql
unix 2 [ ACC ] STREAM LISTENING 18133452 24747/mariadbd /var/lib/mysql/mysql.sock

Tohle by mělo (snad) vrátit jeho skutečné umístění. Ale v adresáři databáze /var/lib/mysql se nachází jen jakýsi prázdný soubor s názvem "=mysql.sock"

# ps -edf | grep mysql
mysql 24747 1 4 Oct02 ? 04:14:20 /usr/sbin/mariadbd
root 27766 32472 0 12:19 pts/1 00:00:00 grep --color=auto mysql


# mysql_config --socket
/run/mysql/mysql.sock

Podle tohoto výpisu by měl být mysql.sock zde. Ale není. Ale adresář prázdný není - zase je tam nějaký podivný soubor nazvaný "protecteddir."

V /etc/my.cnf konkrétní nastavení chybí, i když by tam dle toho co jsem vygoglil mělo být?:
# The following options will be passed to all MariaDB clients
[client]
# password = your_password
# port = 3306
# socket = /var/run/mysql/mysql.sock


Omlouvám se vám za případnou špatnou interpretaci v popisu, ale nejsem odborník přes databáze.
Prosím, poradíte co se s tím dá dělat a jak to vyřešit?

Moc předem děkuji vám všem.

Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

6.10.2020 14:41 z_sk | skóre: 34 | blog: analyzy
Rozbalit Rozbalit vše Re: MariaDB běží ale nevytvoří socket - (HY000/2002): No such file or directory
Odpovědět | | Sbalit | Link | Blokovat | Admin
Uvedu několik výpisů:
# netstat -npl|grep mysql
unix 2 [ ACC ] STREAM LISTENING 18133452 24747/mariadbd /var/lib/mysql/mysql.sock
Tohle by mělo (snad) vrátit jeho skutečné umístění. Ale v adresáři databáze /var/lib/mysql se nachází jen jakýsi prázdný soubor s názvem "=mysql.sock"
Toto je korektne spravanie socketu. ;)
debian.plus@protonmail.com
6.10.2020 14:43 z_sk | skóre: 34 | blog: analyzy
Rozbalit Rozbalit vše Re: MariaDB běží ale nevytvoří socket - (HY000/2002): No such file or directory
Odpovědět | | Sbalit | Link | Blokovat | Admin
Hod obsah /etc/mysql/mariadb.conf.d/50-server.cnf alebo ekvivalentny.
debian.plus@protonmail.com
6.10.2020 14:59 Petr_70 | skóre: 8
Rozbalit Rozbalit vše Re: MariaDB běží ale nevytvoří socket - (HY000/2002): No such file or directory
Děkuji za snahu, ale soubor 50-server.cnf ani adresář /etc/mysql neexistují.

Je pouze zmíněný /etc/my.cnf includující adresář /etc/my.cnf.d obsahující:
enable-encryption.preset
mysql-clients.cnf
server.cnf
spider.cnf
6.10.2020 15:25 z_sk | skóre: 34 | blog: analyzy
Rozbalit Rozbalit vše Re: MariaDB běží ale nevytvoří socket - (HY000/2002): No such file or directory
tak ten server.cnf

Niekedy to nadbytocne cislo sa pouziva, ak chces urcit poradie pri vypise priecinku zoradene podla abecedy alebo inom type zoradenia.
debian.plus@protonmail.com
7.10.2020 08:43 Petr_70 | skóre: 8
Rozbalit Rozbalit vše Re: MariaDB běží ale nevytvoří socket - (HY000/2002): No such file or directory
Já se moc omlouvám, že až teď - musel jsem odjet a mimo dosah počítače..

server.cnf:
# # These groups are read by MariaDB server.
# Use it for options that only the server (but not clients) should see
#
# See the examples of server my.cnf files in /usr/share/mysql/
#

# this is read by the standalone daemon and embedded servers
[server]

# this is only for the mysqld standalone daemon
[mysqld]

#
# * Galera-related settings
#
[galera]
# Mandatory settings
#wsrep_on=ON
#wsrep_provider=
#wsrep_cluster_address=
#binlog_format=row
#default_storage_engine=InnoDB
#innodb_autoinc_lock_mode=2
#
# Allow server to accept connections on all interfaces.
#
#bind-address=0.0.0.0
#
# Optional setting
#wsrep_slave_threads=1
#innodb_flush_log_at_trx_commit=0

# this is only for embedded server
[embedded]

# This group is only read by MariaDB servers, not by MySQL.
# If you use the same .cnf file for MySQL and MariaDB,
# you can put MariaDB-only options here
[mariadb]

# This group is only read by MariaDB-10.5 servers.
# If you use the same .cnf file for MariaDB of different versions,
# use this group for options that older servers don't understand
[mariadb-10.5]
6.10.2020 15:05 Petr_70 | skóre: 8
Rozbalit Rozbalit vše Re: MariaDB běží ale nevytvoří socket - (HY000/2002): No such file or directory
Někde jsem na zahraničním fóru našel možné řešení odstranit /etc/my.cnf a po spuštění db serveru jej nechat vytvořit znova. Ale k tomu jsem neměl zatím odvahu, třeba je řešení jinde..
6.10.2020 15:27 z_sk | skóre: 34 | blog: analyzy
Rozbalit Rozbalit vše Re: MariaDB běží ale nevytvoří socket - (HY000/2002): No such file or directory
Zaarchivuj si a zmaz. RAW tabulky su ulozene inde (/var/run/mysqld u Debianu). A nechaj na distro, nech vytvori.
debian.plus@protonmail.com
6.10.2020 18:34 Peter Golis | skóre: 64 | blog: Bežné záležitosti | Bratislava
Rozbalit Rozbalit vše Re: MariaDB běží ale nevytvoří socket - (HY000/2002): No such file or directory
Priečinok /var/run/ zvykne byť určený na dočasné súbory služieb, a obsahuje FIFO sockety alebo lock súbory. Obvykle sa zvyklo jednať o nejakú formu RAM disku (tmpfs) aby to pri štarte OS nebolo treba čistiť. O ktorú verziu Debianu sa jedná že to ukladá DB na dočasný disk ktorý zanikne pri vypnutí alebo reštarte počítača?
6.10.2020 20:20 z_sk | skóre: 34 | blog: analyzy
Rozbalit Rozbalit vše Re: MariaDB běží ale nevytvoří socket - (HY000/2002): No such file or directory
Mas pravdu, ze sa neuklada do /var/run/mysqld. Realne sa uklada do /var/lib/mysql (vid.).
debian.plus@protonmail.com
6.10.2020 20:48 Peter Golis | skóre: 64 | blog: Bežné záležitosti | Bratislava
Rozbalit Rozbalit vše Re: MariaDB běží ale nevytvoří socket - (HY000/2002): No such file or directory
A nezabudni si znova kliknúť aj pri ďalšom tvojom príspevku na to, že si nesprávnou radou opakovane vyriešil niekomu problém. Vylepšuje ti to skóre, a vyzeráš tak profesionálnejšie. Veď nato si si vytvoril tvoje druhé alter ego na tomto portáli.
6.10.2020 23:45 z_sk | skóre: 34 | blog: analyzy
Rozbalit Rozbalit vše Re: MariaDB běží ale nevytvoří socket - (HY000/2002): No such file or directory
Ja som si nevytvoril profil. No zas profesialne este nie som, kedze cca 30% daco zle dam.

Ja som nevytvoril ten profil. A ego mi ani netreba mastit. Myslim, ze som sa uz nezabudnutelne zapisal (pre niektorych v dobrom, pre niektorych) a zrejme si niekto povedal, ze si niekto na mna sadne, takym vtypaleckym sposobom.
debian.plus@protonmail.com

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.