MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。在Linux系统下无法访问mysql,这是怎么回事呢?Linux系统下无法访问mysql该怎么办呢?下面我们一起来看看解决方法。

mysql数据库消失 mysql数据库不存在_mysql数据库消失

Linux系统下无法访问mysql怎么办?

1、问题及异常

ThreadPoolAsynchronousRunner - com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@75d634ea -- APPARENT DEADLOCK!!! Complete Status:

Managed Threads: 3

Active Threads: 3

Active Tasks:

2、查找原因

费劲周知,确定是MySQL权限的问题

3、解决过程

1》 mysql -uroot -proot mydbName

2》 grant all privileges on *.* to wangs@‘%’ identified by ‘123456’;

3》 flush privileges;

4》 exit;

5》 /etc/init.d/mysql restart

4、命令的说明

进入 mysql ,用户为 root,密码为 root,数据库为 mydbName,-u 意为用户,-p 意为密码,

增加用户 wangs,所有权限,数据库为 *,后面的 .* 不可少,% 代表对所有远程的 IP 地址,如果要限定 IP 地址的话,单独写上 IP 地址,

密码是 123456,注意引号 ‘ 不可少,用来表示是字符串。

以上命令和过程均不可省略。

补充: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)