当前位置: 首页 > 图文教程 > 数据库 > MYSQL > MYSQL教程:MYSQL启动与退出以及链接故障恢复

MYSQL
Windows下对MySQL安装的故障诊断与排除
解析:校对确定 较为复杂的一些特殊情况
解析:轻松掌握 字符串文字字符集和校对
教你快速了解公共MySQL的数据库服务器层
MYSQL和ORACLE的一些操作区别
MySQL的6种日志详解
巧用MySQL InnoDB引擎锁机制解决死锁问题
怎样正确的解决 MySQL 中文模糊检索问题
教你轻松掌握如何保护MySQL中的重要数据
细化解析:怎样把你的MySQL完全中文化
带你轻松接触 MySQL中损坏的MyISAM表
解析:以mysql_开始的未定义引用错误
不同操作系统下的mysql数据库同步
MySQL优化之数据表的处理
安装MySQL错误归档处理
MySQL分页优化解析
数据库新手入门之MYSQL出错代码列表
经验之谈:MySQL与ASP.NET配合更强大
MySQL数据库的其它安全问题
RHEL下架设MYSQL集群

MYSQL教程:MYSQL启动与退出以及链接故障恢复


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-30   浏览: 80 ::
收藏到网摘: n/a

1.服务器的启动和关闭

在Linux和windows平台下MySQL服务器的启动方式有很大不同,这里将分开介绍:

本文由软晨学习网(http://www.ruanchen.com)整理发布!转载请注明出处,谢谢!

  • Linux平台:

    Linux平台下,每一个进程都需由一个用户来运行,MySQL最好不要以root用户来运行。我们可创建一个mysql用户和mysql组,MySQL服务器程序目录和数据目录由这个用户和组所拥有,其它用户没有任何权限。以mysql用户来运行MySQL服务器。

    % mysqld --user=mysql #即使以root用户执行该命令,MySQL数据库还是会与mysql用户ID关联。
    

    为了使服务器在系统启动时自动以mysql用户运行,需配置my.cnf配置文件 ,把user=mysql包含在[mysqld]段中。

    关闭服务器可用% mysql.server stop或% mysqladmin -u root -p shutdown

  • windows平台:

    手动方式:直接运行c:\mysqld命令。

    作为服务方式:运行c:\mysqld-nt --install命令,把mysqld-nt安装为windows的服务,此后,每当windows启动时,它就会自动运行。mysqld-nt是一个支持命名管道的MySQL服务器。运行c:\mysqld-nt --remove可把服务删除。手动启动关闭服务的方法是运行c:\net start mysql和c:\net stop mysql命令。

2. 连接故障恢复

当由于误删mysql套接字时(/tmp/mysql.sock),我们就不能通过套接字连接服务器。这时我们可通过tcp/ip来连接服务器,要建立一个tcp/ip连接,需用127.0.0.1代替locahost作为-h参数的值来连接服务器。如:

% mysqladmin -h 127.0.0.1 -u root -p shutdown #关闭服务器再重启会重建套接字

当我们因为忘记root用户密码而不能连接服务器时,重设置密码的步骤如:

  • 用 % kill -TERM PID关闭服务器,用-TERM信息可使服务器在关闭前把内存中的数据写入磁盘。如果服务器没有响应,我们可用% kill -9 PID来强制删除进程,但不建议这样做。这时内存中的数据不会写入磁盘,造成数据不完整。如果你是用mysql_safe脚本启动MySQL服务器的,这个脚本会监控服务器的运行情况并在它被终止时重启服务器,所以如需关闭服务器,要先终止该进程,然后再真正终止mysqld进程。

  • 接着用--skip_grant-tables启动服务器。这时MySQL服务器将不使用权限表对连接操作进行验证。你就可在不提供root密码的情况下连接上服务器,并获得root的权限。这样你就可用上面介绍的修改密码的方法重设root用户的密码。注意:连接上服务器后,要马上执行flush privileges命令,使权限表读入内存并生效,以阻止其他的连接。该语句还重新激活grant语句,在MySQL服务器不使用权限表时,grant语句被禁用。

  • 修改完root用户密码后,我们就可关闭服务器并重启使所有配置正常运作。