MySQL数据库的启动与终止

由于MySQL服务器具有多种安装分发,而且能够运行在多种操作平台之上,因此它的启动与停止的方法也多种多样。你可以根据实际情况使用其中的一种。在你安装、升级或者维护系统时,你可能需要多次启动和终止服务器,你需要了解启动和终止服务器的方方面面。

直接运行守护程序

1、你可以采用的方法

一般的,你可以有以下几种选择启动MySQL服务器,它们的功能和用法几乎是相同的,所以一起在这里介绍:

直接使用MySQL守护程序mysqld启动数据库系统,尤其是Win32平台上的分发,这是因为,在Win32平台上没有mysql.server等服务器脚本可用。

通过调用safe_mysqld脚本,它接受与mysqld相同的参数,并试图为mysqld决定正确的选项,然后选择用那些运行它。

2、脚本或者守护程序的存放位置

对于二进制分发的安装,mysqld守护程序安装在MySQL安装目录的bin目录下,或者可在MySQL源代码分发的libexec目录下找到,缺省为/usr/local/libexec/。对于rpm分发,mysqld应该位于PATH变量决定的程序搜索路径中,因此可以直接引用。

safe_mysqld仍旧是一个脚本,并且只存在于Unix平台的分发中。safe_mysqld脚本安装在MySQL安装目录的bin目录下,或可在MySQL源代码分发的scripts目录下找到。对于rpm分发,该脚本应该位于PATH变量决定的程序搜索路径中,因此可以直接引用。

3、为什么要使用safe_mysqld脚本

safe_mysqld接受和mysqld同样的参数,并试图确定服务器程序和数据库目录的位置,然后利用这些位置调用服务器。safe_mysqld将服务器的标准错误输出重定向到数据库目录中的错误文件中,并以记录的形式存在。启动服务器后,safe_mysqld还监控服务器,并在其死机时重新启动。safe_mysqld通常用于Unix的BSD风格的版本。

如果,你曾经为root或在系统启动程序中启动safe_mysqld,其错误日志将有root拥有。如果再用非特权的用户身份调用safe_mysqld,则可能引起“Access Denied”(即,“所有权被拒绝”)的错误。此时可以删除错误文件在试一次。

由于safe_mysqld脚本的功能,使用safe_mysqld脚本明显比直接启动mysqld守护程序来得有效。

4、启动服务器的完整过程

对于Unix平台上的分发,如果你以root或在系统引导期间启动sqfe_mysqld,出错日志由root拥有,这可能在你以后试图用一个非特权用户调用safe_mysqld时将导致“permission denied”(权限拒绝)错误,删除出错日志再试一下。因此建议你在启动服务器前,首先切换到一个专门的用户mysql。

具体方法如下:

Unix平台

$ su mysql

$ safe_mysql & (或者 mysqld & ,不推荐)

Win32平台

C: \ mysql\bin>mysqld --standalone

或者C: \ mysql\bin>mysqld-nt –standalone

如果你使用mysqld并且没有把mysql安装在标准的位置,通常需要提供—basedir选项你的数据库的安装位置。

$safe_mysqld --basedir=”/path/to/mysql” &(Unix平台)

c:\mysql\bin>mysqld --basedir=”x:/path/to/mysql” (Win32平台)

时间: 2024-08-03 03:53:50

MySQL数据库的启动与终止的相关文章

MySQL数据库无法启动实现数据恢复的例子

熟悉Oracle的朋友都知道,当Oracle数据库无法正常启动之时,可以通过dul或者其他三方工具直接读取数据文件中数据,从而来抢救数据,减少损失,在mysql中如果使用了innodb引擎也可以在mysql数据库不启动启动下抽取相关记录.本文为抽取数据字典篇章,后续将继续提供drop恢复,truncate 恢复,delete恢复等mysql非常规恢复篇章. 创建一张get_dict测试表 mysql> use xifenfei; Reading table information for com

MySQL 数据库的启动与关闭

    MySQL数据库服务器通常指的的是mysqld,而命令行mysql则是mysql客户端程序,这两个概念通常容易混淆.通常启动mysql服务器即是启动mysqld进程,mysqld启动后,可以通过mysql连接到mysql服务器.本文主要描述了mysql服务器的几种启动方式以及如何关闭mysql服务器.   1.直接使用mysqld启动   mysqld 即是mysql服务器,可以调用该命令直接启动mysql服务器  mysqld 从配置文件中读取[mysqld]以及[server]选项组

MySQL数据库无法启动的简单排错

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://dgd2010.blog.51cto.com/1539422/1406691 一般来说有经验的管理员在部署操作系统时通常会将操作系统本身与应用软件分离,将两者安装在不同的磁盘或者分区中,并且会保证有一定的资源余量以满足后期长期运行的需要.但是在虚拟化环境中一般经常遭遇资源比较紧张.管理比较混乱的情况,特别是资源浪费非常严重,往往是资源分配不均.最初对物理服务器测量不准确导致的.不

MySQL数据库innodb启动失败无法重启的解决方法_Mysql

问题介绍 电脑在使用过程中死机,重启后发现mysql没有启动成功,查看错误日志发现是innodb出现问题导致mysql启动失败. 错误日志 $ mysql.server start Starting MySQL . ERROR! The server quit without updating PID file (/usr/local/var/mysql/fdipzonedeMacBook-Air.local.pid). 22:08:37 mysqld_safe Starting mysqld

MySQL数据库两台主机同步实战

MySQL支持单向.异步复制,复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器.主服务器将更新写入二进制日志文件,并维护日志文件的一个索引以跟踪日志循环. 当一个从服务器连接到主服务器时,它通知主服务器从服务器在日志中读取的最后一次成功更新的位置.从服务器接收从那时起发生的任何更新,然后封锁并等待主服务器通知下一次更新. 在实际项目中,两台分布于异地的主机上安装有MySQL数据库,两台服务器互为主备,客户要求当其中一台机器出现故障时,另外一台能够接管服务器上的应用,这就需要两

mysql数据库使用的基本命令

1.连接数据库的格式 mysql -h IP -u用户名 -p密码; 1.1连接远程数据库 mysql -h 192.168.1.214 -uroot -p123456 也可写成: mysql -h 192.168.1.214 -u root -p 123456 1.2连接本地数据库 mysql -uroot -p123456 也可写成: mysql -u root -p 123456 2.查看数据库版本 mysql> status; 3.查看数据库 show databases: 4.查看数据

MySQL 数据库两台主机同步实战(linux)_Mysql

当一个从服务器连接到主服务器时,它通知主服务器从服务器在日志中读取的最后一次成功更新的位置.从服务器接收从那时起发生的任何更新,然后封锁并等待主服务器通知下一次更新. 在实际项目中,两台分布于异地的主机上安装有MySQL数据库,两台服务器互为主备,客户要求当其中一台机器出现故障时,另外一台能够接管服务器上的应用,这就需要两台数据库的数据要实时保持一致,在这里使用MySQL的同步功能实现双机的同步复制. 以下是操作实例: 1.数据库同步设置 主机操作系统:RedHat Enterprise Lin

MySQL数据库启动失败1067进程意外终止的解决办法总结

问题现象: 前天对MYSQL数据库进行迁移操作,B机(新机子)的MYSQL和A机的版本不同,为方便B机安装好MYSQL直接COPY了A机的DATA目录 启动MYSQL,"MYSQL 1067 进程意外终止"错误,以前遇到过此错误,惯性地去按上次的方法尝试解决,结果问题依旧,于是google,搜索了许久...无果 最后查看系统应用程序日志:找到最近的MYSQL报错,都是E文: Error message file 'D:\system\MySQL\MySQL Server 5.0\sha

一台MySQL数据库启动多个实例

一台数据库服务器为什么运行多个实例? 有一台MySQL数据库服务器硬件利用率往往在30%左右,那剩余的70%岂不是浪费了,这时就可以考虑运行多个MySQL服务,你可以做主从架构,读写分离,数据库隔离,容纳更多的并发链接,充分利用硬件资源,让服务器性能发挥最大化. 1.编译安装MySQL5.5 1 2 3 4 5 6 7 8 9 10 11 12 # yum install -y cmake gcc gcc-c++ make cmake ncurses ncurses-devel # groupa