MYSQL Ubuntu中的安裝配置
下載與安裝
#安裝命令
sudo apt-get install mysql-server
開啓遠程訪問
1.修改數據庫中user的host
# 使用mysql -u root -p登錄到數據庫,然後依次執行下面語句
# xxxxxx表示root用戶的密碼
use mysql;
update user set host = '%' where user ='root';
grant all privileges on *.* to 'root'@'%' identified by 'xxxxxx';
flush privileges;
2.修改my.conf的中的ip綁定
# 進入編輯/etc/mysql/mysql.conf.d/mysqld.conf
vi /etc/mysql/mysql.conf.d/mysqld.conf
# 修改ip綁定
# 源文件中爲:
bind-address 127.0.0.1
# 將其修改爲:
bind-address 0.0.0.0
# 覆蓋保存
esc:wq
3.重啓mysql 服務
sudo /etc/init.d/mysql restart
或者
service mysql restart
測試訪問
1.檢查3306端口是否開啓
netstat -an | grep 3306
#正常的
tcp6 0 0 :::3306 :::* LISTEN
2.判斷遠程連接是否成功
#從另外的機器訪問3306端口
telnet remote_server_ip 3306
#remote_server_ip指你的安裝mysql的主機地址
如果連接不成功,則去服務器檢查防火牆、安全策略,比如阿里雲服務器看看安全組策略是否開啓3306端口
常見問題
1、找不到mysqld.sock
Q: Can't connect to lcoal MYSQL server though sock '/var/run/mysqld/mysqld.sock
R: MySQL下mysql.sock丟失丟失的原因一般是因爲配置文件不一致的原因,mysqld 錯誤啓動,mysqld_safe會清除一次mysql.sock 。
A:
1、如果是.sock文件存在但是指向不對,在root權限下修改my.cnf文件(/etc/mysql/my.cnf),指定正確的路徑;
2、如果是.scok文件不存在
判斷一般人解決故障時沒有切換到mysql用戶,造成權限有問題,無法創建mysql授權表,所以也就無法創建/tmp/mysql.sock 和hostname.pid文件。因此,總結解決方法如下:
//root 用戶也是可以的
#su mysql
//到bin目錄執行,重建授權表
$/usr/local/bin/mysql_install_db
$/usr/local/bin/mysqld_safe &
//測試
mysql -uroot -p
mysq>bye;
文件已經解決,重新生成新的 /tmp/mysql.sock 和 hostname.pid