今天发现搭在环境上的mysql数据库被黑,数据库直接被干掉了,只能重新恢复数据库运行,不指望能要回数据了,恢复过程中遇到一些问题,只是做简单记录:
1.mysql的启停:
启动:service mysqld start
重启:service mysqld restart
停止:service mysqld stop
2.重启过程中发现后台报错:
2.1 启动之前打开mysql运行监控日志: tail -f /var/log/mysqld.log
2.2 运行service mysqld restart报错:
[ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist
解决过程:
网上有人运行: mysql_install_db –usrer=mysql datadir=/var/lib/mysql
PS:datadir是mysql存放文件目录;
这个操作我试过,效果跟网上那个帖子说的一样,是不行的;
然后继续使用他后面提到的命令:mysql_install_db,意思是重新初始化了一把数据库,
这时再重启数据库,终于成功了
帖子参考地址http://blog.csdn.net/indexman/article/details/16980433
3.修改登陆密码:
# mysql -uroot -p
Enter password: 【输入原来的密码】
mysql>use mysql;
mysql> update user set password=passworD("test1314") where user='root';
mysql> flush privileges;
mysql> exit;
4.客户端远程连接数据库:
客户端报错:Host "10.13.23.12" is not allowed connect to this mysql sercer
解决过程:
修改服务端mysql root用户的监听ip为通配:
# mysql -uroot -p
mysql>use mysql;
mysql>use mysql;
mysql> update user set host='%' where user='root' and host='localhost';
5.选择数据库报错:
# mysql -uroot -p
mysql> use mysql
ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'mysql'
这个是由于user表有user用户为空的记录导致无法选择mysql用户登陆数据库
解决过程:
1>:# service mysqld stop
Stopping mysqld: [ OK ]
[root@VM_16_12_centos ~]# /usr/bin/mysqld_safe --skip-grant-tables
171226 20:11:06 mysqld_safe Logging to '/var/log/mysqld.log'.
171226 20:11:07 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
2>:新启一个ssh窗口:
# mysql -uroot -p
mysql> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> select host,user from user;
+--------------------+------+
| host | user |
+--------------------+------+
| % | root |
| 127.0.0.1 | root |
| localhost | |
| vm\_16\_12\_centos | |
| vm\_16\_12\_centos | root |
+--------------------+------+
5 rows in set (0.00 sec)
mysql> delete from user where user='';
Query OK, 2 rows affected (0.00 sec)
mysql> select host,user from user;
+--------------------+------+
| host | user |
+--------------------+------+
| % | root |
| 127.0.0.1 | root |
| vm\_16\_12\_centos | root |
+--------------------+------+
3 rows in set (0.00 sec)
# service mysqld start
# mysql -uroot -p
mysql> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
这样就好了。
没怎么注意博客样式,只是记录下问题的解决过程,供自己以后看的,大家如果有什么问题,还是多百度吧,解决问题的优秀的帖子很多,大家还是要有耐心好好看看。
分享到:
相关推荐
### MySQL 安装常见问题详解 #### 一、卸载MySQL的彻底方法 在尝试重新安装MySQL时,可能会遇到“Could not start the...通过以上步骤,你可以有效解决MySQL安装过程中遇到的多种常见问题,确保MySQL服务的正常运行。
标签:"mysql5.7 centos7.1",该标签表明该文档的主题是关于 MySQL 5.7 版本在 Centos 7.1 操作系统下的使用和问题解决。 从标题、描述和标签中,我们可以了解到该文档的主要内容是关于 Centos 7.1 操作系统下使用 ...
本文档旨在总结MYSQL 数据库常见问题的诊断和解决方法,涵盖日志、内存、I/O、句柄数、保留策略等五个方面。 日志诊断 在生产环境下,当 MYSQL 数据库出现问题时,首先需要查看报警日志,确定数据库的问题。通常,...
MySQL图形界面操作系统并非一个操作系统,而是一种用于简化MySQL数据库管理和操作的工具。它通过提供用户友好的图形界面,使得非技术人员也能轻松地进行数据库创建、表设计、数据导入导出等操作,极大地降低了学习...
### MySQL常见问题与应用技巧详解 #### 忘记MySQL的root密码 在日常运维工作中,有时我们会遇到忘记了MySQL root密码的情况。此时,可以通过以下步骤来重置密码: 1. **登录到数据库所在的服务器**。 2. **手动...
以上就是关于"mysql操作常用问题解决"的一些关键知识点,涵盖了MySQL数据库的基础使用、管理、优化和故障排查等方面,对于日常操作和维护MySQL数据库非常有帮助。通过学习和实践这些内容,可以有效地提升MySQL数据库...
本篇文章将详细介绍如何解决MySQL数据库中的乱码问题,并探讨如何通过C#进行数据库操作的封装,提高代码的可重用性和效率。 首先,MySQL乱码问题的根源通常在于字符集设置。MySQL数据库、数据库表以及字段都有各自...
### Excel VBA 操作 MySQL 全面指南 #### 一、准备工作 在开始使用 Excel VBA 来操作 MySQL 数据库之前,需要进行一系列的基础配置工作。以下步骤将帮助您完成必要的准备工作。 **1. MySQL 简介** MySQL 是一个...
总结而言,MySQL的故障分析需要综合运用日志文件、状态变量、执行计划、系统命令和诊断工具等手段,通过系统地收集和分析数据,才能准确定位问题并进行有效解决。对于不同的故障类型,需要灵活运用不同的策略和工具...
在C#编程环境中,连接和操作MySQL数据库是常见的任务,特别是在构建桌面应用或Web应用时。本主题将详细讲解如何使用C#进行MySQL数据库的连接和操作,以及封装类的实现方式。 首先,我们需要理解C#连接MySQL的基本...
在Red Hat Linux下安装与操作MySQL数据库是一项常见且重要的任务,尤其对于系统管理员和数据库开发者而言。以下将详细解析在Red Hat系统上安装MySQL及其相关Perl模块的过程,并提供一些基本的MySQL操作命令。 ### ...
MySQL是世界上最受欢迎的开源关系型数据库...以上是MySQL在Linux环境中的一些常见问题和解决策略,实际操作中可能会遇到更具体的问题,需要根据具体情况灵活应对。不断学习和实践,将有助于提升MySQL管理和维护的能力。
#### 六、报告错误和问题 手册中详细说明了如何向MySQL开发团队报告发现的错误或遇到的问题。这对于帮助改进产品和确保其稳定运行非常重要。 #### 七、MySQL 标准兼容性 MySQL 8.0在标准SQL的基础上进行了扩展,...
"SQL Server 操作 MySQL 的步骤和方法" 在多种数据库环境下,经常会遇见在不同数据库之间转换数据和互相进行操作的情况。下面是使用 SQL Server 操作 MySQL 的步骤和方法的详细说明: 1. 操作前的准备 在 SQL ...
MySQL常见问题总结 MySQL 是一个广泛使用的关系型数据库管理系统,随着其广泛应用,许多开发者和DBA都需要掌握 MySQL 的相关知识。本资源总结了 MySQL 中常见的问题,涵盖了数据库层面的负载均衡、主从复制、备份、...
本文详细介绍了如何在 Linux 操作系统中安装 MySQL 数据库,包括下载安装包、解压缩安装包、创建 mysql 组和用户、初始化数据库文件、设置权限、启动服务、设置密码等步骤。通过这些步骤,我们可以成功地安装 MySQL ...
下面我们将详细讨论如何使用`MySql.Data.dll`来实现常见的MySQL数据库操作: 1. **连接数据库:** 使用`MySqlConnection`类创建数据库连接,需要指定服务器地址、数据库名、用户名和密码。例如: ```csharp ...
MySQL可视化操作工具是数据库管理员和开发人员常用的辅助软件,它以图形化界面提供对MySQL数据库的管理和操作,使得用户无需通过命令行即可进行数据查询、编辑、管理等操作。这样的工具提高了工作效率,降低了操作...
MySQL是一种广泛使用的开源关系型数据库管理系统,以其高效、稳定和...总之,MySQL的安装和使用涉及多个层面,从基础的安装配置到复杂的SQL操作和数据库管理。通过学习和实践,你可以熟练掌握这一强大的数据库系统。
2. MySQL服务器:安装并配置好MySQL服务,创建所需的数据库和用户。 3. MySQL驱动:Qt需要连接到MySQL,所以我们需要安装`libmysqlclient`(或在Windows上是`qmysql`驱动)。 接下来,我们将分步骤讲解如何构建这个...