2016-06-07 99 views
1

我想在arch上使用mysql。它已經安裝了,但是當我嘗試連接如何重新安裝arch/linux上的mysql/mariadb? mysql.sock不存在

connect to server at 'localhost' failed error: 'Can't connect to local MySQL server through socket '/run/mysqld/mysqld.sock' (2 "No such file or directory")'

我看着爲/etc/my.cfg但該文件不存在.. 東西一定去在安裝過程中出錯。 我該如何「清除」mariadb並重新安裝?

回答

0

如果您使用archlinux,理解軟件包管理器(pacman)是一個重要的想法。對於這個問題有關/etc/my.cfg可以運行

pacman -Ql mariadb 

那裏你會看到該文件實際上是所謂:

/etc/mysql/my.cnf 

拱Linux將配置包您滿意,這是部分拱門哲學。它將提供示例配置,甚至還爲您提供systemd單元文件

usr/lib/systemd/system/mysqld.service 

,但它是你的責任,以確保配置是正確的,實際上啓動守護進程。

systemctl enable mysqld # add the unit file to the boot sequence 
systemctl start mysqld # runs ExecStart= in the unit file 
systemctl stop mysqld  # kills the daemon 
systemctl disable mysqld # remove unit from boot sequence 

重裝

由於單詞重新安裝在的問題和別人的標題可能會發現這個問題,這要歸功於:要重新安裝mariadb你根本

pacman -S mariadb 

pacman將重新安裝已經安裝的軟件包,不需要移除軟件包(爲了完整,軟件包的移除發生在pacman -R

+0

我知道pacman的基本命令,用於安裝和刪除。我試圖重新安裝mariadb,但錯誤是一樣的。 my.cfg文件就位。當我輸入systemctl status mysql時,我得到「Loaded:not-found(Reason:No such file or directory)」 – tino

+0

@tino - 你沒有將my.cnf重命名爲'my.cfg',是嗎? – grochmal

0

Arch Linux中的CNF文件爲/etc/mysql/my.cnf

我可以重現您的問題的一個簡單方法是MariaDB關閉時。對不起,如果它聽起來很愚蠢,但你沒有提到它:MariaDB是否開始? sudo systemctl start mysqld.service

你應該看看MariaDB日誌以獲得一些線索:journalctl _SYSTEMD_UNIT=mysqld.service(也許粘貼一些部分,如果你仍然沒有得到什麼)。

1

截至7-28-17我不得不在新安裝上做到這一點。這裏的新手可能會節省一些時間。這是一個真正的痛苦。

確定這裏是交易!!!!! 安裝Apache _沒有概率

安裝MySQL _PROBLEM 吃豆-S的MySQL然後開始服務

  1. 必須取消註釋INNODB以前:

    納米/etc/mysql/my.cnf

  2. 然後在啓動服務之前必須初始化datadirectory:

    mysql_install_d b --user = mysql的--basedir =的/ usr --datadir =在/ var/lib中/ MySQL的

您需要將MariaDB的數據目錄初始化開始 服務之前。這可以通過mysql_install_db命令完成,例如: mysql_install_db --user = mysql --basedir =/usr --datadir =/var/lib/mysql mariadb的可選依賴項 galera:對於具有Galera的MariaDB集羣WSREP perl- dbd-mysql:用於mysqlhotcopy,mysql_convert_table_format和 mysql_setpermission