Linux无法登陆mysql怎么办什么原因
MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。有用户无法登陆,遇到这种情况该怎么办呢?下面小编就给大家介绍下Linux无法登陆mysql的解决方法,一起来了解下吧。
Linux无法登陆mysql怎么办?
以centos系统为例
首先:
cp /usr/share/doc/MySQL-server-5.5.24/my-medium.cnf /etc/my.cnf
其次:
touch /var/lib/mysql/mysql.scok
查看下数据库运行状态
/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运行状态
/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; 创建数据库
use databasename; 进入数据库
drop database name 直接删除数据库,不提醒
show tables; 显示表
describe tablename; 查看表的结构
select 中加上distinct去除重复字段
mysqladmin drop databasename 删除数据库前,有提示。
显示当前mysql版本和当前日期
select version(),current_date;
数据库维护方法
在MySQL使用的过程中,在系统运行一段时间后,可能会产生碎片,造成空间的浪费,所以有必要定期的对MySQL进行碎片整理。
当删除id=2的记录时候,发生的现象
这个时候发现磁盘的空间并没有减少。这种现象就叫做碎片化(有一部分的磁盘空间在数据删除以后(空),还是无法被操作系统所使用。)
常见的优化:
# alter table xxx engine myisam;
# optimize table t1;
注意: 在实际开发的过程中,上面两个语句尽量少使用,因为在使用的过程中,MySQL的表的结构会整体全部重新整理,需要消耗很多的资源,建议在凌晨两三点钟的时候执行。(在linux下有定时器脚本可以执行,crontab)
MySQL登陆相关文章: