2.MySQL配置

2.1 启动选项和配置文件

2.1.1 在命令行上使用选项

服务启动时禁止各客户端使用TCP/IP网络通信
mysqld--skip-networking
改变默认的存储引擎
mysqld --default-storage-engine=MyISAM
使用mysqld --help 查看其他命令;

2.1.2 配置文件

MySQL 在启动时,会在多个路径下寻找配置文件,这些文件有些是固定的,有些可以在命令行指定。

1. 配置文件路径

windows

路径名备注
%WINDIR%\my.ini
C:\my.ini
BASEDIR\my.iniBASEDIR指的是MySQL的安装路径
defaults-extra-file命令行指定的额外配置文件路径
%APPDASTA%\MySQL.mylogin.cnf登录路径选项(仅限客户端)

unix

路径名备注
etc/my.cnf
/etc/mysql/my.cnf
SYSCONFIGDIR/my.cnf
M Y S Q L H O M E / m y . c n f MYSQL_HOME/my.cnf MYSQLHOME/my.cnf特定于服务器的选项(仅限服务器)
default-extra-file命令行指定的额外配置文件路径
~/.my.cnf特定于用户的选项
~/.mylogin.cnf特定于用户的登录路径选项(仅现客户端)
2. 配置文件内容

配置文件中的启动选项被划分若干各组,每组用中括号[]括起来,

[server]
(具体的启动选项)
skip-networking
default-storage-engine=MyISAM
[mysqld]
(具体的启动选项)
[mysqld_safe]
(具体的启动选项)
[client]
(具体的启动选项)
[mysql]
(具体的启动选项)
[mysqladmin]
(具体的启动选项)
程序名类别能读取的组
mysqld启动服务器[mysqld]、[server]
msyqld_safe启动服务器[mysqld]、[server]、[msyqld_safe]
msyqld.server启动服务器[mysqld]、[server]、[msyqld_safe]
msyqld启动客户端[mysqld]、[client]
mysqladmin启动客户端[mysqladmin]、[client]
mysqlclient启动客户端[mysqlclient]、[client]
3.特性的MySQL版本的专用选项组

我们可以定义一个[mysql-5.7]的选项组,他的含义和[mysqld]相同,只不过只有版本号为5.7的mysqld程序才能使用这个选项组中的选项。

4.配置文件的优先级

按照 配置文件路径 下的表中给定的顺序,依次读取,如果存在重复项,则按照最后的配置文件的配置项为准

5.通一个配置文件中多个组的优先级

例如:mysqld 可以访问[mysqld]、[server]组,那么将以最后一个出现在组中的启动项为准,下面例子中以[msyqld]组中的配置项为准。

[server]
default-storage-engine=InnoDB
[mysqld]
default-straoge-engine=MyISAM
6.defaults-file 的使用

假设我们不想让MySQL在默认路径下搜索配置,我们可以执行如下命令:

mysqld --defaults-file=/temp/myconfig.txt

这样一来,在程序启动时将值在/temp/myconfig.txt路径下搜索配置文件。

7.在命令行和配置文件中的配置项区别
  1. 部分配置项只有在命令行,例如:mysqld --defaults-file
  2. 如同出现同样配置,则采用命令行中的配置

2.2系统变量

2.2.1简介

在MySQL的运行过程中,大部分的都是可以随时改变,而无需停止并重启服务器。

2.2.2 查看系统变量

使用如下命令查看MySQL服务器程序支持的系统变量以及他们的值:

SHOW VARIABLES LIKE [匹配模式];

例如:

mysql> SHOW VARIABLES LIKE 'default-storage-engine';
mysql> SHOW VARIABLES LIKE 'version';
+---------------+--------+
| Variable_name | Value  |
+---------------+--------+
| version       | 5.7.24 |
+---------------+--------+
1 row in set (0.01 sec)

mysql> SHOW VARIABLES like 'default%';
+-------------------------------+-----------------------+
| Variable_name                 | Value                 |
+-------------------------------+-----------------------+
| default_authentication_plugin | mysql_native_password |
| default_password_lifetime     | 0                     |
| default_storage_engine        | InnoDB                |
| default_tmp_storage_engine    | InnoDB                |
| default_week_format           | 0                     |
+-------------------------------+-----------------------+
5 rows in set (0.00 sec)
2.2.3 设置系统变量
  1. 通过配置文件或者启动参数来设置
  2. 在运行过程中设置
    2.1 不同作用范围的系统变量
    • GLOBAL(全局范围):有些系统变量是统一的,例如:客户端数量(max_connections)、查询缓存的大小(query_cache_size)等。
    • SESSION(会话范围):不同一的系统变量,例如:客户端创建库或者表时,默认的存储引擎。
      我们可以在客户端连接期间设置系统变量:
    SET [GLOBAL/SESSION] 系统变量名 = 值;
    SET @@(GLOBAL/SESSION]).系统变量名 = 值;
    
    2.2 查看不同范围的系统变量范围
    SHOW [GLOBAL|SESSION] VARIABLES [LIKE 匹配模式];
    
    2.3
    • 并不是所有的系统变量都具有CLOBAL和SESSION的作用范围
    • 有些系统变量是只读,并不能设置值
  3. 启动选项和系统变量
    • 大部分的系统变量都可以当做启动项传入
    • 有些系统变量是在程序运行过程中生成的
    • 有些启动选项也不是系统变量,例如:defaults-file

2.3 状态变量

为了便于了解服务器程序的运行情况,MySQL服务器程序中维护许多关于程序运行的状态变量,例如:Threads_connected(表示当前多少客户端与服务建立连接)、Innodb_rows_update表示更新了多少条以InnoDB为存储引擎的表中记录。

SHOW [GLOBAL|SESSION] STATUS [LIKE 匹配的模式];

mysql> show status like '%thread%';
+------------------------------------------+-------+
| Variable_name                            | Value |
+------------------------------------------+-------+
| Delayed_insert_threads                   | 0     |
| Performance_schema_thread_classes_lost   | 0     |
| Performance_schema_thread_instances_lost | 0     |
| Slow_launch_threads                      | 0     |
| Threads_cached                           | 0     |
| Threads_connected                        | 1     |
| Threads_created                          | 1     |
| Threads_running                          | 1     |
+------------------------------------------+-------+
8 rows in set (0.00 sec)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是MySQL 8的安装和配置教程: 1. 下载MySQL 8安装包:在MySQL官方网站(https://dev.mysql.com/downloads/mysql/)上下载适用于您操作系统的MySQL 8安装包。选择与您操作系统相对应的版本。 2. 安装MySQL 8:运行下载好的安装包,并按照提示进行安装。在安装过程中,您可以选择自定义安装选项,例如更改安装路径和选择哪些组件要安装。根据您的需求进行选择。 3. 配置MySQL 8:安装完成后,进入MySQL的安装目录,找到my.ini(Windows)或my.cnf(Linux)文件,并使用文本编辑器打开。 4. 配置MySQL的端口号:在配置文件中找到"port"参数,并将其设置为您想要使用的端口号(默认是3306)。 5. 配置MySQL的字符集:在配置文件中找到"character-set-server"参数,并将其设置为您想要使用的字符集(例如utf8)。 6. 配置MySQL的数据存储路径:在配置文件中找到"datadir"参数,并将其设置为您想要用于存储数据的路径。 7. 配置MySQL的root用户密码:在配置文件中找到"mysql_native_password"参数,并将其设置为您想要使用的root用户密码。 8. 保存并关闭配置文件。 9. 启动MySQL服务:根据您的操作系统,通过命令行或服务管理器启动MySQL服务。 10. 连接MySQL服务器:使用MySQL客户端工具(如MySQL命令行客户端或MySQL Workbench)连接到MySQL服务器,使用root用户和上一步设置的密码进行登录。 11. 创建新用户:为了安全起见,建议创建一个新的MySQL用户,并为其分配适当的权限。 以上是MySQL 8的安装和配置教程的基本步骤。根据您的操作系统和需求,可能还需要进行其他配置和调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值