fedora 16 yum安裝mysql後怎樣啟動,以及添加為系統服務
1 yum 安裝mysql
#yum install mysql mysql-server mysql-devel
如果遇到 ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var
可以使用下面的命令:
啟動mysql服務
#systemctl start mysqld.service
設置mysqld為開機自啟動
#systemctl enable mysqld.service
2、systemctl的用法
該命令為系統進程管理命令; 對比表,以apache / httpd 為例
任務 舊指令 新指令
使某服務自動啟動 chkconfig --level 3 httpd on systemctl enable httpd.service
使某服務不自動啟動 chkconfig --level 3 httpd off systemctl disable httpd.service
檢查服務狀態 service httpd status systemctl status httpd.service(服務詳細信息) systemctl is-active httpd.service (僅顯示是否 Active)
顯示所有已啟動的服務 chkconfig --list systemctl list-units --type=service
啟動某服務 service httpd start systemctl start httpd.service
停止某服務 service httpd stop systemctl stop httpd.service
重啟某服務 service httpd restart systemctl restart httpd.service
3、 安裝後可以這樣查看mysql的相應命令的安裝位置
查找mysql服務器文件的安裝位置
#rpm -ql mysql-server
查找mysql客戶端文件的安裝位置
#rpm -ql mysql
4、系統默認沒有安裝mysql管理數據庫,運行安裝命令
#mysql_install_db
或者加上參數
#mysql_install_db --user=root --basedir=/usr --datadir=/var/lib/mysql
安裝完mysql管理數據庫後,可以啟動mysql了,可以這樣查看相應的basedir和datadir的值。
啟動mysql
#mysqld_safe --user=root &
查找mysqld的進程號
#ps aux|grep mysqld
結束mysqld,進程號由上面的命令得到,注意是 /usr/bin/mysqld 的進程號,而不是 /bin/sh /usr/bin/mysqld_safe 的進程號。
#kill 35431
5、下載一個mysql的Linux二進制壓縮安裝包(版本號差不多就行,比如都是5.5.xx)中的support-files/mysql.server文件,修改其中的兩行。
basedir=/usr
datadir=/var/lib/mysql
搜索'start'段,在 $bindir/mysqld_safe --datadir="$datadir" 修改為 $bindir/mysqld_safe --user=root --datadir="$datadir" 。
然後
#cp mysql.server /etc/rc.d/init.d/mysqld
#chmod +x /etc/rc.d/init.d/mysqld
至此,mysql就成功注冊為服務了,可以使用 #service mysqld start|stop|restrat 命令來運行mysql了。
啟動mysql
#service mysqld start
給mysql的root用戶添加密碼123
#mysqladmin -u root password 123
使用mysql命令行客戶端
#mysql -u root -p 123
6、 啟動 mysqld.service 出現無法啟動的問題
用service mysqld start啟動服務時,出現如下錯誤:
Redirecting to /bin/systemctl start mysqld.service
Failed to issue method call: Access denied
用systemctl start mysql.service時,出現如下錯誤:
Failed to issue method call: Unit mysql.service failed to load: No such file or directory. See system logs and 'systemctl status mysql.service' for details.
直接輸入mysql出現如下錯誤:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
解決方法:mysql的擁有者是root,而mysql是用mysql用戶身份執行當然寫不進去了,是系統權限的問題,chown -R mysql:mysql /var/lib/mysql/ 就可以了