MySQL优化

mysqlbug  查看编译参数

mysqlcheck 可以检查和修复MyISAM表,并且它还可以优化和分析表

mysql_config 编译mysql客户端程序

mysql_convert_table_format 修改表引擎

mysqld_multi  用来启动和停止任何运行的不同端口和套接字的mysqld进程

mysql_find_rows   输出所有匹配正则表达式的SQL查询。

mysql_fix_extensions  将 MYISAM 或者(ISAM)表文件转换为他们的规范格式,它会寻找和这些后缀匹配的文件

.frm.myd.myi.isd, and .ism  并且分别重命名他们为 .frm.MYD.MYI.ISD, and .ISM。 将文件从具有不区分大小写的文件名(如Windows)的系统传输到具有区分大小写的文件名的系统时,这可能很有用。

mysqlhotcopy  使用lock tables、flush tables和cp或scp来快速备份数据库.它是备份数据库或单个表最快的途径,完全属于物理备份,但只能用于备份MyISAM存储引擎和运行在数据库目录所在的机器上.

与mysqldump备份不同,mysqldump属于逻辑备份,备份时是执行的sql语句。

mysql_install_db 数据库的初始化 ,当数据库出现故障或者新增一个实例的时候需要进行实例化。

mysqlslap   mysql 自带的压力测试工具 

 

查询语句将内容输出到文件中

select * from user into outfile '/tmp/user.xls';     文件不存在的时候将会自动创建。

查看mysql 提供的引擎   show engines;

查看 mysql现在使用的引擎   show variables like "%storage_engine%";

查看某个表(user)使用了什么引擎    show create table user;   ENGINE 后面的参数表示的就是该表当前使用的引擎。

清空整个表的内容   truncate tablename 

 

导出所有用户权限

yum install perl-DBD-MySQL

wget percona.com/get/pt-show-grants

perl pt-show-grants --user=root --ask-pass --flush > /root/grants.sql

mysql -uroot < /root/grants.sql    将导出的所有用户权限导入到新建的数据库中。

 

配置中的一些参数

innodb_buffer_pool_size = 128M    缓冲池的大小,缓冲池是数据和索引缓存的地方, 如果单纯的是数据库服务器,设置为内存大小的75%。

innodb_buffer_pool_instances =    控制缓冲池的个数

innodb_log_buffer_size  数据库一般每秒都会把数据写入磁盘  这个参数不用太大

innodb_flush_log_at_trx_commit     对 innodb 的I/O 效率影响很大,默认值为1 ,可以取 0  1  2  三个值,

 一般建议设置为2 , 如果数据安全性要求比较高则使用默认值 1 

innodb_read_io_threads

innodb_write_io_threads   innodb读写的IO进程数,默认为 4 

innodb_file_per_table  控制 innodb每一个表使用独立的表空间,默认为OFF, 也就是所有表都会建立在 共享表空间中。

innodb_stats_on_metadata  mysql 在什么情况下会刷新innodb表的统计信息。

max_connections   连接最大数,当数据库报错 " too many connections" 时,就是因为此值设置的太小,常见是因为应用程序没有正常的关闭连接。

此值默认为 151 。

一个数据库配置向导 

https://tools.percona.com/wizard

 

设置慢查询

log_slow_queries=/var/log/sql_slow.log
long_query_time=5  (单位是 秒 s)

分析慢查询日志的工具   pt-query-digest

wget percona.com/get/pt-query-digest

./pt-query-digest    logname

 

posted on   思此狂  阅读(207)  评论(0编辑  收藏  举报

编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示