`
ithero
  • 浏览: 145671 次
社区版块
存档分类
最新评论

Mysql的启动参数

阅读更多

Mysql的启动其实不算复杂,我的理解就是读取配置文件,传递参数,启动。

说的比较简单,其实这里是有关部署的事情,配置文件的部署需要了解,我们看看默认的my.cnf的说明:

引用
# You can copy this file to
# /etc/my.cnf to set global options,
# mysql-data-dir/my.cnf to set server-specific options (in this
# installation this directory is /Data/apps/mysql/var) or
# ~/.my.cnf to set user-specific options.

# www.aslibra.com by hqlulu



也就是说,放在 /etc/my.cnf 是服务器的全局设置
然后是启动的数据库的my.cnf,然后是用户目录的 .my.cnf 文件
最后其实就是启动命令指定的参数,下面自己可以找到方法一步一步验证,我们用port的变化来说明:

1 默认的一般启动形式是如下:

/Data/apps/mysql/bin/mysqld_safe --user=mysql &



如果没有 /etc/my.cnf 的情况下,默认是打开mysql安装目录的 var文件夹,读取权限配置
如果没有相应的表,那就会提示出错:

引用
080502 04:12:23  mysqld started
080502  4:12:23 [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist
080502 04:12:23  mysqld ended



可以使用bin/mysql_install_db新装一个数据库默认库
如果是表的所有者不是mysql,那会提示:

引用
080502 04:15:37  mysqld started
080502  4:15:37 [ERROR] /Data/apps/mysql/libexec/mysqld: Can't find file: './mysql/host.frm' (errno: 13)
080502  4:15:37 [ERROR] /Data/apps/mysql/libexec/mysqld: Can't find file: './mysql/host.frm' (errno: 13)
080502  4:15:37 [ERROR] Fatal error: Can't open and lock privilege tables: Can't find file: './mysql/host.frm' (errno: 13)
080502 04:15:37  mysqld ended



启动后,看到使用的是 3306端口号

2 如果复制一个配置文档到 /etc/my.cnf 并且修改port参数试试:

[mysqld]
port            = 3307
socket          = /tmp/mysql.sock



同样语句启动后,是3307端口号

3 复制一个文件到 var 目录

[mysqld]
port            = 3308
socket          = /tmp/mysql.sock



同样语句启动后,是3308端口号

4 复制一个my.cnf到用户mysql的根目录

cat /etc/passwd 知道:
mysql:x:27:27:MySQL Server:/var/lib/mysql:/bin/bash

复制一个到 /var/lib/mysql/.my.cnf

[mysqld]
port            = 3309
socket          = /tmp/mysql.sock



同样语句启动后,是3308端口号,看来这个不太成立

5 指定配置文件

复制一个 my_setting.cnf ,修改为3340

/Data/apps/mysql/bin/mysqld_safe --defaults-file=/Data/apps/mysql/var/my_setting.cnf --user=mysql &



注意,指定配置文件的参数应该需要在第一个位置出现,互换两个参数的位置会出错了,启动后,确实是3340

6 修改启动参数

/Data/apps/mysql/bin/mysqld_safe --defaults-file=/Data/apps/mysql/var/my_setting.cnf --user=mysql --port=3341 &



启动后是 3341端口

总结:

1 mysql有默认的一些参数,如果没有指定,则取默认值
2 mysql尝试读取 /etc/my.cnf 做默认值
3 mysql尝试读取数据目录的 my.cnf ,取代相应的值
4 mysql的用户目录似乎无效,不太清楚呢 :)
5 mysql启动参数可以指定配置文件位置,优先级次高
6 也可以直接指定具体的参数,优先级最高

分享到:
评论

相关推荐

    一些mysql启动参数的说明和优化方法

    本文将深入探讨MySQL的一些关键启动参数及其优化方法,以帮助提升数据库的效率和响应速度。 首先,`back_log`参数决定了在MySQL暂时停止处理新的连接请求之前,能够堆积在队列中的请求数量。如果短时间内有大量的...

    linux系统下MySQL数据库的导入导出

    1. 修改MySQL启动参数: ``` mysqld_safe --default-character-set=gbk ``` 这会将默认字符集设置为GBK。 2. 更改特定数据库的字符集: ``` ALTER DATABASE db_name DEFAULT CHARACTER SET gbk; ``` #### ...

    修改my.cnf之后启动mysql出错(完美解决).docx

    MySQL 配置文件 my.cnf 是 MySQL 数据库的核心配置文件,该文件用于存储 MySQL 服务器的各种配置选项,例如数据库的连接参数、缓存设置、日志记录等。my.cnf 文件通常位于 /etc/mysql/ 目录下。 MySQL 启动错误的...

    完美解决mysql启动后随即关闭的问题(ibdata1文件损坏导致)

    在MySQL数据库系统中,"ibdata1" 文件是InnoDB...总的来说,处理MySQL启动后立即关闭的问题需要深入理解数据库的工作原理,以及如何读取和分析错误日志。同时,定期备份和监控数据库的状态是预防这类问题的重要措施。

    Php5.6.4+IIS8.5+mysql5.6.22+phpmyadmin4.3.6的配置.pdf

    完成创建后,右键点击该快捷方式,选择“属性”,在“目标”字段中添加MySQL启动参数。 ``` C:\Windows\System32\cmd.exe "D:\MySQL\mysql server\bin" /k mysql –u root -p inventory ``` 5. 点击“确定”...

    mysql的zip启动脚本

    通常会加上参数,如`--console`以在命令行显示日志输出,`--skip-grant-tables`以跳过权限检查(仅用于初始设置),或者`--user=mysql`以指定运行服务的用户。 5. **等待服务稳定**:启动脚本可能会包含一个延时或...

    MySQL.zip启动

    这里,`@echo off`是用来关闭命令行的回显功能,`cd /d %~dp0`则用来切换到批处理文件所在的目录,`mysqld`是MySQL服务器的可执行文件,`--console`参数表示在命令行界面下启动MySQL服务,便于查看启动过程中的输出...

    MYSQL启动daima

    根据提供的文件信息,我们可以推断出这是一段关于MySQL服务器启动过程的相关内容。然而,由于提供的信息非常有限且包含了一些非标准字符(如"ボーDos룩"),这可能是因为复制过程中出现了编码错误或原始文本中包含了...

    mysql启动与web

    MySQL启动与Web是IT行业中两个紧密关联的概念。MySQL是一个广泛使用的开源关系型数据库管理系统,而Web则涵盖了通过HTTP协议在互联网上进行数据交互的各种技术。本文将深入探讨MySQL的启动过程以及它如何与Web应用...

    mysql6启动目录(免安装).zip

    "mysql6免安装说明.docx"文档应包含详细的操作指南,包括如何配置数据库的初始化设置、创建数据文件存放路径、设置环境变量、启动和停止MySQL服务等步骤。通常,这些步骤可能包括: 1. 解压MySQL 6的压缩包到一个...

    centos7安装数据库MySQL启动报错Job for mysqld

    CentOS 7 安装 MySQL 数据库启动报错解决方案 在 CentOS 7 操作系统中安装 MySQL 数据库时,可能会出现启动报错的现象,报错信息为 "Job for mysqld.service failed because the control process exited with error...

    问题:本地计算机上的MySQL服务启动后停止,某些服务在未由其他服务或程序使 用时将自动停止。

    MySQL 服务启动失败问题解决方案 在本地计算机上,MySQL 服务启动后停止,是一种常见的问题。这种情况下,某些服务在未由其他服务或程序使用时将自动停止。解决该问题的关键在于正确地安装和配置 MySQL 服务。 ...

    MYSQL启动停止

    1. **启动参数**:通过添加启动参数,如`--skip-grant-tables`,可以跳过权限检查用于紧急恢复。 2. **慢启动**:在某些情况下,可以使用`--console`参数让MySQL在启动时输出到控制台,帮助诊断问题。 3. **定时...

    MySQL JDBC配置参数

    ### MySQL JDBC配置参数详解 在Java应用程序中使用MySQL数据库时,通常会借助JDBC(Java Database Connectivity)技术来实现数据库连接与数据交互。为了优化性能、确保连接的有效性以及合理管理资源,正确设置JDBC...

    mysql自定义启动

    这是MySQL服务器的主要配置文件,它包含了启动时需遵循的各种参数和选项。通常,`my.cnf`位于系统的`/etc/mysql/`目录下(在Linux系统中),或者在Windows系统的`C:\ProgramData\MySQL\MySQL Server X.Y\my.ini`路径...

    MySQL5.1 启动选项(配置参数)详解

    本文将详细介绍 MySQL 5.1 的启动选项,包括配置参数、启动选项、 MySQL 选项等。 一、配置参数 MySQL 5.1 的配置参数可以从多个文件中读取默认选项,包括 `/etc/my.cnf`、 `/etc/mysql/my.cnf`、 `MYSQLHOME/etc/...

Global site tag (gtag.js) - Google Analytics