MySQL 5.1 执行show databases没有mysql库

同事反映,在mysql的一套测试库中执行'show databases;'命令,看不到mysql库
-bash-4.1$ mysql -uroot -p
Enter password:
mysql> select version();
+-----------+
| version() |
+-----------+
| 5.1.73    |
+-----------+
1 row in set (0.00 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| test               |
+--------------------+
2 rows in set (0.00 sec)

查看报错日志,没有什么异常

查看数据文件目录里面的文件和相关操作系统权限,正常,数据文件的目录也正确
mysql> show variables like '%data%';
+----------------------------+------------------------+
| Variable_name              | Value                  |
+----------------------------+------------------------+
| character_set_database     | latin1                 |
| collation_database         | latin1_swedish_ci      |
| datadir                    | /var/lib/mysql/        |
| innodb_data_file_path      | ibdata1:10M:autoextend |
| innodb_data_home_dir       |                        |
| innodb_stats_on_metadata   | ON                     |
| max_length_for_sort_data   | 1024                   |
| max_long_data_size         | 1048576                |
| myisam_data_pointer_size   | 6                      |
| skip_show_database         | OFF                    |
| updatable_views_with_limit | YES                    |
+----------------------------+------------------------+
11 rows in set (0.00 sec)

mysql> exit
Bye
-bash-4.1$ cd /var/lib/mysql
-bash-4.1$ ls -l
total 28716
-rw-rw----. 1 mysql mysql 18874368 Mar 14 18:02 ibdata1
-rw-rw----. 1 mysql mysql  5242880 Mar 14 18:02 ib_logfile0
-rw-rw----. 1 mysql mysql  5242880 Jul 21  2016 ib_logfile1
drwx------. 2 mysql mysql    12288 Oct 19 12:04 merlin
drwx------. 2 mysql mysql     4096 Sep 29  2014 monitor_gui
drwx------. 2 mysql mysql     4096 Mar 26  2014 mysql
srwxrwxrwx  1 mysql mysql        0 Mar 14 17:57 mysql.sock
drwx------. 2 mysql mysql    12288 Nov 24  2015 nacoma
drwx------. 2 mysql mysql     4096 Nov  4  2014 ngmdb
drwx------. 2 mysql mysql     4096 Mar 26  2014 test
drwx------. 2 mysql mysql     4096 Oct 19 12:06 trapper

在网上查了一下相关的案例,发现与权限表 mysql.user表有关

解决方法:
关闭数据库
mysqladmin -u root -p shutdown

以跳过权限认证方式启动mysql
mysqld_safe --defaults-file=/etc/my.cnf --skip-grant-tables &

删除mysql.user表中host名为 'localhost' 的记录
mysql> use mysql
mysql> delete from user where host='localhost';
Query OK, 7 rows affected (0.00 sec)

mysql> INSERT INTO `user` VALUES ('localhost','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y', 'Y', '','','','',0,0,0,0);
Query OK, 1 row affected (0.00 sec)

mysql> commit;
Query OK, 0 rows affected (0.00 sec)

再次重启数据库后,正常
mysqladmin -u root -p shutdown

mysqld_safe --defaults-file=/etc/my.cnf &

更改root密码
mysqladmin -u root -proot password djg345

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26506993/viewspace-2135363/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/26506993/viewspace-2135363/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值