当前位置: 首页 > ds >正文

linux系统mysql性能优化

1、系统最大打开文件描述符数

查看限制
ulimit -n


更改配置
# 第一步
sudo vim /etc/security/limits.conf

* soft nofile 1048576
* hard nofile 1048576

# 第二步
sudo vim /etc/sysctl.conf

fs.file-max = 1048576

# 第三步(重启系统)
sudo reboot


验证生效
ulimit -n

sudo sysctl fs.file-max

2、MySQL 最大打开文件描述符数
编辑 MySQL 系统服务的配置文件,更改 LimitNOFILE 的参数值 

sudo vim /lib/systemd/system/mysql.serviceLimitNOFILE=1048576

重载系统服务的配置文件

sudo systemctl daemon-reload

重启 MySQL 服务

sudo systemctl restart mysql

验证生效,在输出结果中查看 Max open files 的显示值

sudo cat /proc/`pidof mysqld`/limits 

3、常见问题
无法远程连接 MySQL
在默认情况下,MySQL 是不支持远程连接的,可以按照以下步骤实现远程连接。

第一步,配置 MySQL 支持远程连接

通过 sudo netstat -anp|grep 3306 命令查看 MySQL 占用的端口,可以得到以下信息

tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      658/mysqld


编辑 MySQL 的配置文件,将 bind-address 的配置内容注释掉,然后重启 MySQL 服务

# 编辑配置文件
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

# bind-address = 127.0.0.1

# 重启服务
sudo systemctl restart mysql
MySQL 服务重启后,再次执行 sudo netstat -anp|grep 3306 命令,可以得到以下信息

tcp6       0      0 :::3306                 :::*                    LISTEN      658/mysqld

第二步,创建新的用户,并授权用户远程访问特定的数据库

CREATE USER 'clay'@'%' IDENTIFIED BY 'password';

GRANT ALL PRIVILEGES ON my_db.* TO 'clay'@'%';

FLUSH PRIVILEGES;

 


4、授权 Root 用户远程登录

若希望授权 root 用户远程访问所有数据库(慎重考虑),可以执行以下 MySQL 命令。
值得一提的是,考虑到数据库安全问题,不建议授予 root 远程登录的权限,这可以降低数据库被攻击的风险。

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;FLUSH PRIVILEGES;

特别注意:按照上述步骤进行配置后,若 MySQL 依旧无法实现远程访问,那么请检查系统的防火墙是否开放了 3306 端口。

5、MySQL 配置文件的位置
MySQL 安装完成后,各个配置文件的位置如下:

PID 文件: /var/run/mysqld/mysqld.pid
配置文件: /etc/mysql/mysql.conf.d/mysqld.cnf
数据目录: /var/lib/mysql
日志文件: /var/log/mysql/error.log
服务启动脚本: /lib/systemd/system/mysql.service

 

http://www.xdnf.cn/news/15403.html

相关文章:

  • 【理念●体系】迁移复现篇:打造可复制、可复原的 AI 项目开发环境
  • AI产品经理面试宝典第12天:AI产品经理的思维与转型路径面试题与答法
  • 车载诊断架构 --- 诊断功能开发流程
  • 分析与展望
  • Linux:信号
  • Armstrong 公理系统深度解析
  • 一文讲清楚大语言模型核心:Transformer 内部运行原理详解,看这一篇就够了!
  • Datawhale AI夏令营 MCP初体验——简历小助手
  • 2.单例模式
  • 用 Python 将分组文本转为 Excel:以四级词汇为例的实战解析
  • python-while循环
  • 数据标注:AI时代的黄金矿场如何规避法律暗礁
  • K3S滚动发布Jar
  • Windows环境下JS计时器精度差异揭秘
  • 老项目模拟器运行提示Executable Path is a Directory
  • 三步定位 Git Push 403:从日志到解决
  • 技术面试问题总结二
  • SE机制深度解析:从原理到实现
  • React - createPortal
  • blender uv小技巧
  • C++实现二叉树左右子树交换算法
  • JavaSE重点知识
  • 【Spring AOP】什么是AOP?切点、连接点、通知和切面
  • 从0到1搭建个人技术博客:用GitHub Pages+Hexo实现
  • STM32中的RTC(实时时钟)详解
  • 客户资源被挖?营销方案泄露?企业经营信息保护避坑指南
  • YOLOv8
  • Win11怎样进入WinRE恢复环境
  • 介绍几个电机驱动芯片(TC1508S、DRV8848)
  • TensorBoard