Linux無法登陸mysql怎么辦什么原因
MySQL是一種關系數據庫管理系統(tǒng),關系數據庫將數據保存在不同的表中,而不是將所有數據放在一個大倉庫內,這樣就增加了速度并提高了靈活性。有用戶無法登陸,遇到這種情況該怎么辦呢?下面小編就給大家介紹下Linux無法登陸mysql的解決方法,一起來了解下吧。
Linux無法登陸mysql怎么辦?
以centos系統(tǒng)為例
首先:
cp /usr/share/doc/MySQL-server-5.5.24/my-medium.cnf /etc/my.cnf
其次:
touch /var/lib/mysql/mysql.scok
查看下數據庫運行狀態(tài)
/etc/init.d/mysql status
提示
ERROR! MySQL is running but PID file could not be found
先打印MYSQL進程
ps aux | grep mysql
然后KILL進程
kill -9 pid1 pid2 …
再啟動MYSQL
/etc/init.d/mysql start
再檢查mysql運行狀態(tài)
/etc/init.d/mysql status
因為一開始/etc下我是找不到my.cnf 這個文件的,/usr/share/doc/MySQL-server-5.5.24/這個下面有個my-default.cnf這個文件,看了看,感覺和my-medium.cnf差不多,就拷貝到etc目錄下了,來充當my.cnf吧,
mysql有兩種啟動方式,一種tcp,一種socket,一般來說tcp啟動沒問題,只是socket啟動才會出現上述問題。
補充:MySQL 數據庫常用命令
create database name; 創(chuàng)建數據庫
use databasename; 進入數據庫
drop database name 直接刪除數據庫,不提醒
show tables; 顯示表
describe tablename; 查看表的結構
select 中加上distinct去除重復字段
mysqladmin drop databasename 刪除數據庫前,有提示。
顯示當前mysql版本和當前日期
select version(),current_date;
數據庫維護方法
在MySQL使用的過程中,在系統(tǒng)運行一段時間后,可能會產生碎片,造成空間的浪費,所以有必要定期的對MySQL進行碎片整理。
當刪除id=2的記錄時候,發(fā)生的現象
這個時候發(fā)現磁盤的空間并沒有減少。這種現象就叫做碎片化(有一部分的磁盤空間在數據刪除以后(空),還是無法被操作系統(tǒng)所使用。)
常見的優(yōu)化:
# alter table xxx engine myisam;
# optimize table t1;
注意: 在實際開發(fā)的過程中,上面兩個語句盡量少使用,因為在使用的過程中,MySQL的表的結構會整體全部重新整理,需要消耗很多的資源,建議在凌晨兩三點鐘的時候執(zhí)行。(在linux下有定時器腳本可以執(zhí)行,crontab)
MySQL登陸相關文章: