linuxMySQLsock
首先是啟動服務。如果是redhat的話,可以使用setup或者ntsysv命令進入服務設置頁面後,將mysqld那項選中,然後保存退出。如果不是redhat沒有以上工具的話,可以使用chkconfig --level 35 mysqld on命令來開啟服務。當然,這只是要求每次系統啟動時啟動服務,為了不用重啟,需要使用/etc/init.d/mysqld start或者service mysqld start命令來使現在的服務啟動,如果是重啟服務的話,使用service ** restart。
我的mysql是裝系統時安裝的,你的應該是後來安裝的,但是應該也是可以通過上述方式打開的。
在終端中輸入mysql,看是否提示有這條命令,如果提示是command not found的話,應該是PATH變數的問題。解決的方法,可以將你安裝mysql的路徑也加入到PATH中,也可以將mysql中的需要執行的這些命令拷貝到PATH中。不過我mysql也是個菜鳥,真的不清楚有多少命令,所以建議把安裝路徑加入到PATH中,可以通過修改/etc/profile或者主目錄下.bashrc文件來實現。一個是全局,一個只針對本賬號。就是在文件中添加PATH=/usr/mysql:$PATH,位置無所謂,添進去應該就ok了。
然後輸入mysql命令看看有反映沒,如果沒反應,就在查查,我也沒這么弄過,但是我估計應該好使。
最後是添加mysql的密碼了,默認時直接輸入mysql就可以進入了,所以要進行修改。輸入mysqladmin -u root password ***,就是給root添加密碼了,如果是修改的話,格式為mysqladmin -u root -p 舊密碼 password 新密碼。還有,我真的是個菜鳥,加密碼之前,其他賬號也可以使用mysql命令直接進入,加了之後其他帳戶可以使用mysql -uroot -p命令,然後輸入密碼進入(root也是以同樣的方法進入),但是我不知道怎麼添加別的帳戶,比如說其他賬戶tom使用mysql -utom -p來進入,不好意思了。
對了,設定密碼的時候,輸入的是明文,而由於bash會保留命令,最好清除一下.bash_history,不然別人用一下history命令就可以知道你的密碼是什麼了。
『貳』 linux系統mysql服務啟動失敗
解決「linux系統mysql服務啟動失敗」問題的具體步驟如下:
1、首先我們查找mysql.sock的文件位置,如果忘記了文件的位置,首先查看/etc/my.cnf文件。
6、mysql啟動的時候錯誤可以通過日誌進行判斷,日誌的路徑同樣在my.cnf中可以看出。
這樣就解決了「linux系統mysql服務啟動失敗」的問題。
『叄』 在Linux安裝好MySQL,不能啟動mysql,
呵呵,是你的mysql.sock
文件不存在了,
可能是被你不小心刪除了,
連接localhost通常通過一個Unix域套接字文件進行,一般是/tmp/mysql.sock。如果套接字文件被刪除了,本地客戶就不能連接。這可能發生在你的系統運行一個cron任務刪除了/tmp下的臨時文件。
如果你因為丟失套接字文件而不能連接,你可以簡單地通過重啟伺服器重新創建得到它。因為伺服器在啟動時重新創建它。
另一個解決辦法是你現在不能用套接字建立連接因為它不見了,你可以建立一個TCP/IP連接,例如,如果伺服器主機是192.168.0.1,你可以這樣連接:
%mysql
-u
root
-h
192.168.0.1
-p
%mysqladmin
-u
root
-h
192.168.0.1
-p
shutdown
如果套接字文件被一個cron任務刪除,問題將重復出現,除非你修改cron任務或使用一個或使用一個不同的套接字文件,你可以使用全局選項文件指定一個不同的套接字,例如,如果數據目錄是/usr/local/var,你可以通過將下列行加入/etc/my.cnf中,將套接字文件移到那裡:
[mysqld]
socket=/usr/local/var/mysql.sock
[client]
socket=/usr/local/var/mysql.sock
對伺服器和客戶均指定路徑名,使得它們都使用同一個套接字文件。如果你只為伺服器設置路徑,客戶程序將仍然期望在原位置執行套接字,在修改後重啟伺服器,使它在新位置創建套接字.如果你有這個問題,事實上任何人可以刪除MySQL通訊套接字「/tmp/mysql.sock」,在Unix的大多數版本上,你能通過為其設置sticky(t)位來保護你的「/tmp」文件系統。作為root登錄並且做下列事情:
shell>
chmod
+t
/tmp
這將保護你的「/tmp」文件系統使得文件僅能由他們的所有者或超級用戶(root)刪除。
你能執行ls
-ld
/tmp檢查sticky位是否被設置,如果最後一位許可位是t,該位被設置了。
『肆』 linux mysql默認數據目錄在哪
MySQL是一個關系型資料庫管理系統,由瑞典MySQL AB 公司開發,目前屬於 Oracle 旗下公司。
1.安裝方法有兩種,一種是yum安裝,另外一種是源碼安裝
rpm安裝命令如下
yum install mysql-server -y
2.查看相關路徑的方法如下
[root@rhel5 ~]# find / -name mysql -print
/etc/rc.d/init.d/mysql
/var/lib/mysql
/var/lib/mysql/mysql
/var/lock/subsys/mysql
/usr/lib/mysql
/usr/include/mysql
/usr/share/mysql
/usr/bin/mysql
而 data默認放在:/var/lib/mysql
2.一般來說只要修改數據的存放路徑就可以,修改方法如下
原路徑:/var/lib/mysql
目標路徑:/home/data/mysql
(1)home目錄下建立data目錄
cd /home
mkdir data
(2)停止mysql進程
service mysqld stop
(3)把/var/lib/mysql整個目錄保持許可權復制到/home/data
cp -arp /var/lib/mysql/home/data/
(4)找到my.cnf配置文件
如果/etc/目錄下沒有my.cnf配置文件,請到/usr/share/mysql/找到my-medium*.cnf文件,拷貝到/etc/並改名為my.cnf
命令如下:
[root@test1 mysql]# cp
/usr/share/mysql/my-medium.cnf/etc/my.cnf
(5)編輯/etc/my.cnf
為保證MySQL能夠正常工作,需要指明mysql.sock文件的產生位置。修改
socket=/var/lib/mysql/mysql.sock 為:
socket=/home/data/mysql/mysql.sock
操作如下:
vi my.cnf (用vi工具編輯my.cnf文件,找到下列數據修改之)
# The MySQL server[mysqld]
port= 3306
#socket =
/var/lib/mysql/mysql.sock(原內容,為了更穩妥用「#」注釋此行)
socket = /home/data/mysql/mysql.sock(加上此行)
(6)修改MySQL啟動腳本/etc/init.d/mysql
搜索datadir將/var/lib/mysql修改成現在的實際存放路徑:home/data/mysql
[root@test1 etc]# vi/etc/init.d/mysql
get_mysql_option mysqld datadir "/data/mysql"
最後做一個mysql.sock 鏈接:
ln -s /home/data/mysql/mysql.sock
/var/lib/mysql/mysql.sock(需要從/home/data/mysql下復制一份過來)
(7)重新啟動MySQL服務
service mysqld restart
最後創建資料庫,查看目標目錄下是否已經存在
深入學習linux建議讀《linux就該這么學》這本書