Rumah > Artikel > pangkalan data > Apakah fail konfigurasi mysql
Fail konfigurasi MySQL dalam sistem pengendalian Windows ialah "my.ini", yang biasanya terletak dalam direktori root pemasangan MySql, atau mungkin berada di bawah folder tersembunyi "ProgramData" manakala konfigurasi MySQL fail dalam sistem pengendalian Linux Fail ialah "my.cnf", dan lokasinya secara amnya dalam direktori "/etc/my.cnf" atau "/etc/mysql/my.cnf".
Persekitaran pengendalian tutorial ini: sistem linux7.3&&windows7, versi mysql8, komputer Dell G3.
Fail konfigurasi MySQL dalam sistem pengendalian Windows ialah my.ini;
Secara amnya, my.ini berada dalam direktori akar pemasangan MySql, atau ia mungkin berada di bawah folder tersembunyi "ProgramData".
Secara amnya, my.cnf berada dalam direktori /etc/my.cnf atau /etc/mysql/my.cnf
fail konfigurasi my.ini
my.ini ialah fail konfigurasi lalai yang digunakan oleh MySQL Dalam keadaan biasa, MySQL boleh dikonfigurasikan dengan hanya mengubah suai kandungan dalam fail konfigurasi my.ini.
Selain direktori yang diperkenalkan di atas, mungkin terdapat beberapa fail konfigurasi dengan akhiran .ini dalam direktori pemasangan MySQL Fail konfigurasi yang berbeza mempunyai maksud yang berbeza.
my.ini ialah fail konfigurasi lalai yang digunakan oleh MySQL Fail konfigurasi lain adalah templat untuk fail konfigurasi yang sesuai untuk pangkalan data yang sesuai ditunjukkan dalam nama fail dijelaskan secara terperinci.
my-huge.ini: Fail konfigurasi sesuai untuk pangkalan data yang sangat besar.
my-large.ini: Fail konfigurasi sesuai untuk pangkalan data yang besar.
my-medium.ini: Fail konfigurasi sesuai untuk pangkalan data bersaiz sederhana.
my-small.ini: Fail konfigurasi sesuai untuk pangkalan data kecil.
my-template.ini: Ia adalah templat fail konfigurasi Wizard Konfigurasi MySQL menulis pilihan dalam fail konfigurasi ke fail my.ini.
my-innodb-heavy-4G.ini: Menunjukkan bahawa fail konfigurasi ini hanya sah untuk enjin storan InnoDB dan memori pelayan tidak boleh kurang daripada 4GB.
Untuk kemudahan pembaca, kami telah meninggalkan komen dalam fail my.ini. Maksud khusus parameter dalam my.ini diperkenalkan secara berasingan di bawah Kandungan fail adalah seperti berikut:
[client] port=3306 [mysql] default-character-set=gbk
Di atas menunjukkan parameter klien dan [mysql]. adalah kedua-dua huraian parameter Seperti berikut:
port: Menunjukkan nombor port yang digunakan oleh klien MySQL untuk menyambung ke pelayan Nombor port lalai ialah 3306. Jika anda perlu menukar nombor port, anda boleh mengubah suai terus di sini.
set aksara lalai: Menunjukkan set aksara lalai klien MySQL.
[mysqld] port=3306 basedir=C:/Program Files/MySQL/MySQL Server 5.7/ datadir=C:/ProgramData/MySQL/MySQL Server 5.7/Data character-set-server=gb2312 default-storage-engine=INNODB sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" max_connections=100 query_cache_size=0 table_cache=256 tmp_table_size=35M thread_cache_size=8 myisam_max_sort_file_size=100G myisam_sort_buffer_size=69M key_buffer_size=55M read_buffer_size=64K read_rnd_buffer_size=256K sort_buffer_size=256K
Di atas ialah parameter pelayan Perihalan parameter adalah seperti yang ditunjukkan dalam jadual berikut:
参数名称 | 说明 |
---|---|
port | 表示 MySQL 服务器的端口号 |
basedir | 表示 MySQL 的安装路径 |
datadir | 表示 MySQL 数据文件的存储位置,也是数据表的存放位置 |
default-character-set | 表示服务器端默认的字符集 |
default-storage-engine | 创建数据表时,默认使用的存储引擎 |
sql-mode | 表示 SQL 模式的参数,通过这个参数可以设置检验 SQL 语句的严格程度 |
max_connections | 表示允许同时访问 MySQL 服务器的最大连接数。其中一个连接是保留的,留给管理员专用的 |
query_cache_size | 表示查询时的缓存大小,缓存中可以存储以前通过 SELECT 语句查询过的信息,再次查询时就可以直接从缓存中拿出信息,可以改善查询效率 |
table_open_cache | 表示所有进程打开表的总数 |
tmp_table_size | 表示内存中每个临时表允许的最大大小 |
thread_cache_size | 表示缓存的最大线程数 |
myisam_max_sort_file_size | 表示 MySQL 重建索引时所允许的最大临时文件的大小 |
myisam_sort_buffer_size | 表示重建索引时的缓存大小 |
key_buffer_size | 表示关键词的缓存大小 |
read_buffer_size | 表示 MyISAM 表全表扫描的缓存大小 |
read_rnd_buffer_size | 表示将排序好的数据存入该缓存中 |
sort_buffer_size | 表示用于排序的缓存大小 |
innodb_additional_mem_pool_size=3M innodb_flush_log_at_trx_commit=1 innodb_log_buffer_size=2M innodb_buffer_pool_size=107M innodb_log_file_size=54M innodb_thread_concurrency=18
以上是 InnoDB 存储引擎使用的参数,参数说明如下:
innodb_additional_mem_pool_size:表示附加的内存池,用来存储 InnoDB 表的内容。
innodb_flush_log_at_trx_commit:是设置提交日志的时机,若设置为 1,InnoDB 会在每次提交后将事务日志写到磁盘上。
innodb_log_buffer_size:表示用来存储日志数据的缓存区的大小。
innodb_buffer_pool_size:表示缓存的大小,InnoDB 使用一个缓冲池类保存索引和原始数据。
innodb_log_file_size:表示日志文件的大小。
innodb_thread_concurrency:表示在 InnoDB 存储引擎允许的线程最大数。
注意:每次修改 my.ini 文件中的参数后,必须重新启动 MySQL 服务才会有效。
my.cnf配置文件
为了方便读者阅读,我们省略了 my.cnf 文件中的注释内容。下面分开介绍 my.cnf 中参数的具体意义,文件内容如下:
[client] port=3306 socket=/var/run/mysql/mysql.sock [mysqldump] quick max_allowed_packet = 16M
以上参数会被 MySQL 客户端应用读取,参数说明如下:
port:MySQL 客户端连接服务器端时使用的端口号,默认为 3306
socket:套接字文件所在目录
quick:支持较大的数据库转储,导出非常巨大的表时需要此项 。
max_allowed_packet:服务所能处理的请求包的最大大小以及服务所能处理的最大的请求大小(当与大的BLOB字段一起工作时相当必要),每个连接独立的大小,大小动态增加。
注意:只有 MySQL 附带的客户端应用程序保证可以读取这段内容。如果想要自己的 MySQL 应用程序获取这些值,需要在 MySQL 客户端库初始化的时候指定这些选项。
[mysqld] user = mysql basedir = /usr/local/mysql datadir = /mydata/mysql/data port=3306 server-id = 1 socket=/var/run/mysql/mysql.sock
上述参数说明如下:
user:mysqld 程序在启动后将在给定 UNIX/Linux 账户下执行。mysqld 必须从 root 账户启动才能在启动后切换到另一个账户下执行。mysqld_safe 脚本将默认使用 user=mysql 选项来启动 mysqld 程序。
basedir:指定 MySQL 安装的绝对路径;
datadir:指定 MySQL 数据存放的绝对路径;
port:服务端口号,默认为 3306
server-id:MySQL 服务的唯一编号,每个 MySQL 服务的 id 需唯一。
socket:socket 文件所在目录
character-set-server = utf8mb4 collation-server = utf8mb4_general_ci init_connect='SET NAMES utf8mb4' lower_case_table_names = 1 key_buffer_size=16M max_allowed_packet=8M no-auto-rehash sql_mode=TRADITIONAL
character-set-server:数据库默认字符集,主流字符集支持一些特殊表情符号(特殊表情符占用 4 个字节)
collation-server:数据库字符集对应一些排序等规则,注意要和 character-set-server 对应
init_connect:设置 client 连接 mysql 时的字符集,防止乱码
lower_case_table_names:是否对 sql 语句大小写敏感,1 表示不敏感
key_buffer_size:用于指定索引缓冲区的大小
max_allowed_packet:设置一次消息传输的最大值
no-auto-rehash:仅仅允许使用键值的 UPDATES 和 DELETES
sql_mode:表示 SQL 模式的参数,通过这个参数可以设置检验 SQL 语句的严格程度
上述内容可能与你的配置文件不同,当有什么需求时,复制使用相应的参数即可。
【相关推荐:mysql视频教程】
Atas ialah kandungan terperinci Apakah fail konfigurasi mysql. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!