零點間的記錄
一、啟動方式
1、使用linux命令service 啟動:
service mysqld start
2、使用 mysqld 腳本啟動:
/etc/inint.d/mysqld start
3、使用 safe_mysqld 啟動:
safe_mysqld&
二、停止
1、使用 service 啟動:
service mysqld stop
2、使用 mysqld 腳本啟動:
/etc/inint.d/mysqld stop
3、 mysqladmin shutdown
三、重啟
1、使用 service 啟動:
service mysqld restart
2、使用 mysqld 腳本啟動:
/etc/inint.d/mysqld restart
備注:查看mysql端口是否已經使用,使用netstat -anp 命令查看服務器端口使用情況。
第二部分,linux下重啟mysql數據庫的各種方法
1、通過rpm包安裝的MySQL
代碼示例:
service mysqld restart
/etc/inint.d/mysqld start
2、從源碼包安裝的MySQL
代碼示例:
// linux關閉MySQL的命令
$mysql_dir/bin/mysqladmin -uroot -p shutdown
// linux啟動MySQL的命令
$mysql_dir/bin/mysqld_safe &
其中mysql_dir為MySQL的安裝目錄,mysqladmin和mysqld_safe位於MySQL安裝目錄的bin目錄下。
3、以上方法都無效時,通過強行命令:
代碼示例:
killall mysqld #關閉mysql
參考文檔:https://www.cnblogs.com/ning-blogs/p/5063379.html
-------------------------------------------完美的分割線--------------------------------------------------
使用客戶端連接mysql服務器,注意事項:
1.需要關閉linux下的防火牆,一般都是關閉的(也可以不用關閉,只需要配置下即可。具體配置看下面)
2.需要在mysql服務中對連接的用戶進行遠程授權連接
問題如下圖:

但是在linux本地是可以連接數據庫的。所以說網絡沒有問題;通過netstat -nalp | grep "3306"命令發現3306端口也開啟着;
通過問度娘發現問題可能出在iptables,查看iptables的運行狀態,發現iptables是運行着的,所有通過chkconfig iptables off 關閉了防火牆,通過chkconfig --list,查看如下圖:

然后通過命令service iptables stop 停止正在運行的防火牆
注意:
如果不想關閉防火牆也可以通過修改配置文件,將-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT添加到/etc/sysconfig/iptables即可(需重啟iptables服務),表示允許3306端口通過防火牆。
在此使用sqlyog進行登錄;發現還是無法登錄還是提示錯誤信息,如下圖:

根據錯誤提示,我本地主機的網卡IP遠程連接時不允許通過該主機連接到MYSQL服務器;可以初步判斷可能是應為缺少權限;
我們需要給用戶添加權限:
登錄mysql,在mysql下輸入如下命令:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION; //允許用戶root使用密碼123456從任何主機連接到MYSQL服務器(這里的用戶和密碼換成自己的哦,別傻不拉幾的)
如果需要制定主機,則可以用下面的命令:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'10.1.1.123' IDENTIFIED BY '123456' WITH GRANT OPTION; //允許用戶root從IP為10.1.1.123的主機連接到MYSQL服務器,並使用123456作為登錄密碼
授權成功之后,再次嘗試進行遠程連接,可以發現連接成功;如下圖:

