####################################################
""" 1、網絡檢測 1)ping主機可以; 2)telnet 主機3306端口不可以; telnet 主機22端口可以; 說明與本機網絡沒有關系;
如果本地端口監聽狀態 telnet 127.0.0.1 3306 看看是否成功, 如果成功, 則 在遠程 telnet 公網ip 3306 來判斷一下是否成功, 如果成功說明沒有問題, 如果失敗,繼續往下看 """
####################################################
""" 2、端口檢測 1)netstat -ntpl |grep 3306 tcp 0 0 :::3306 :::* LISTEN - 2)netstat -ntpl |grep 22 tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN - 可以看出22端口監聽所有地址,而3306只監聽本機地址(綁定了到了本地),所以遠程無法訪問。 對於端口只允許本機訪問,有兩個地方啟用,一個是防火牆啟用3306,一個就是mysql配置綁定本機地址。 """
####################################################
""" 3、防火牆檢測 1)iptables --list查看; 2)開啟防火牆3306端口 vi /etc/sysconfig/iptables -A INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT(允許3306端口通過防火牆) /etc/init.d/iptables restart(重啟防火牆使配置生效) 3)或者直接關閉防火牆; 防火牆的操作,Ubuntu 打開3306號端口:sudo ufw allow 3306 查看端口狀態:sudo ufw status # allow就是開放的。 關閉防火牆:sudo ufw disable 開啟防火牆:sudo ufw enable """
###################################################
""" 4、mysql配置文件檢查 檢查my.cnf的配置,bind-address=addr可以配置綁定ip地址。 不配置或者IP配置為0.0.0.0,表示監聽所有客戶端連接。 #ps -aux | grep mysql 查看進程ID是3340 #ll /proc/3340 查看進程程序情況,找配置文件 或者#which mysql 找程序路徑 執行命令 netstat -an|grep 3306,如果3306前面是127.0.0.1,那么就要修改配置文件了 修改配置文件,網上很多就是如下圖所示的修改方法, vim /etc/mysql/my.cnf vim /etc/mysql/mysql.conf.d/mysqld.cnf。發現bind-address = 127.0.0.1。 """
####################################################
""" 5、mysql用戶訪問權限 進入mysql數據庫 $mysql -u root -p >use mysql; >select host,user from user; MySQL建用戶的時候會指定一個host,默認是127.0.0.1/localhost只能本機訪問; 其它機器用這個用戶帳號訪問會提示沒有權限,host改為%,表示允許所有機器訪問 登錄mysql; 執行 use mysql; 執行 select user,host from mysql.user; 執行 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'Ji10201749!'; 執行 FLUSH PRIVILEGES; 重啟mysql服務 service mysqld restart;
"""
mysql用戶操作

""" 1.新建用戶。 //登錄MYSQL @>mysql -u root -p @>密碼 //創建用戶 mysql> insert into mysql.user(Host,User,Password) values("localhost","phplamp",password("1234")); //刷新系統權限表 mysql>flush privileges; 這樣就創建了一個名為:phplamp 密碼為:1234 的用戶。 然后登錄一下。 mysql>exit; @>mysql -u phplamp -p @>輸入密碼 mysql>登錄成功 2.為用戶授權。 //登錄MYSQL(有ROOT權限)。我里我以ROOT身份登錄. @>mysql -u root -p @>密碼 //首先為用戶創建一個數據庫(phplampDB) mysql>create database phplampDB; //授權phplamp用戶擁有phplamp數據庫的所有權限。 >grant all privileges on phplampDB.* to phplamp@localhost identified by '1234'; //刷新系統權限表 mysql>flush privileges; mysql>其它操作 3.刪除用戶。 @>mysql -u root -p @>密碼 mysql>DELETE FROM user WHERE User="phplamp" and Host="localhost"; mysql>flush privileges; //刪除用戶的數據庫 mysql>drop database phplampDB; 4.修改指定用戶密碼。 @>mysql -u root -p @>密碼 mysql>update mysql.user set password=password('新密碼') where User="phplamp" and Host="localhost"; mysql>flush privileges; """
####################################################
""" mysql是否啟動 這個比較簡單, ps -ef | grep mysql 如果能看到對應的進程就是沒有問題的 """
####################################################
""" 添加阿里雲安全組規則,我也添加了, """
####################################################
linux 如何查看3306端口號是否打開 在Linux使用過程中,需要了解當前系統開放了哪些端口,並且要查看開放這些端口的具體進程和用戶,可以通過netstat命令進行簡單查詢 netstat命令各個參數說明如下: -t : 指明顯示TCP端口 -u : 指明顯示UDP端口 -l : 僅顯示監聽套接字(所謂套接字就是使應用程序能夠讀寫與收發通訊協議(protocol)與資料的程序) -p : 顯示進程標識符和程序名稱,每一個套接字/端口都屬於一個程序。 -n : 不進行DNS輪詢,顯示IP(可以加速操作) -a 顯示所有狀態的socket 即可顯示當前服務器上所有端口及進程服務,於grep結合可查看某個具體端口及服務情況·· netstat -ntlp //查看當前所有tcp端口· netstat -ntulp |grep 80 //查看所有80端口使用情況· netstat -an | grep 3306 //查看所有3306端口使用情況·
####################################################
ps –aux //查看進程號 ps –aux | more //全部查看 ps –ef | grep mysql //查看mysql的進程 kill -9 3306 //強制殺掉進程號3306
####################################################
首先要聲明一下:一般情況下,修改MySQL密碼,授權,是需要有mysql里的root權限的。
注:本操作是在WIN命令提示符下,phpMyAdmin同樣適用。
用戶:phplamp 用戶數據庫:phplampDB
1.新建用戶。
//登錄MYSQL
@>mysql -u root -p
@>密碼
//創建用戶
mysql> insert into mysql.user(Host,User,Password) values("localhost","phplamp",password("1234"));
//刷新系統權限表
mysql>flush privileges;
這樣就創建了一個名為:phplamp 密碼為:1234 的用戶。
然后登錄一下。
mysql>exit;
@>mysql -u phplamp -p
@>輸入密碼
mysql>登錄成功
2.為用戶授權。
//登錄MYSQL(有ROOT權限)。我里我以ROOT身份登錄.
@>mysql -u root -p
@>密碼
//首先為用戶創建一個數據庫(phplampDB)
mysql>create database phplampDB;
//授權phplamp用戶擁有phplamp數據庫的所有權限。
>grant all privileges on phplampDB.* to phplamp@localhost identified by '1234';
//刷新系統權限表
mysql>flush privileges;
mysql>其它操作
3.刪除用戶。
@>mysql -u root -p
@>密碼
mysql>DELETE FROM user WHERE User="phplamp" and Host="localhost";
mysql>flush privileges;
//刪除用戶的數據庫
mysql>drop database phplampDB;
4.修改指定用戶密碼。
@>mysql -u root -p
@>密碼
mysql>update mysql.user set password=password('新密碼') where User="phplamp" and Host="localhost";
mysql>flush privileges;