首页主机资讯Ubuntu MySQL插件如何使用

Ubuntu MySQL插件如何使用

时间2025-11-27 00:50:03发布访客分类主机资讯浏览1376
导读:Ubuntu 上 MySQL 插件使用指南 一 前置准备与常用命令 安装与启动 更新索引并安装:sudo apt update && sudo apt install mysql-server 查看状态与自启:sudo...

Ubuntu 上 MySQL 插件使用指南

一 前置准备与常用命令

  • 安装与启动
    • 更新索引并安装:sudo apt update & & sudo apt install mysql-server
    • 查看状态与自启:sudo systemctl status mysqlsudo systemctl enable mysql
  • 登录与基础检查
    • 本地登录:sudo mysql(部分 Ubuntu 20.04+root@localhost 默认使用 auth_socket,无需密码;也可 mysql -u root -p 使用密码登录)
    • 查看插件:SHOW PLUGINS;
    • 安装插件:INSTALL PLUGIN 插件名 SONAME ‘插件库.so’;
    • 卸载插件:UNINSTALL PLUGIN 插件名;
    • 在线启用/禁用(若插件支持):SET GLOBAL 插件名_enabled=ON|OFF;
  • 配置文件与目录
    • 主配置:/etc/mysql/my.cnf/etc/mysql/mysql.conf.d/mysqld.cnf
    • 插件目录(常见):/usr/lib/mysql/plugin/(安装 .so 插件时确保文件存在且可读)
    • Ubuntu 维护账号:debian-sys-maint(凭据在 /etc/mysql/debian.cnf,可用于紧急维护)

二 典型场景与示例

  • 认证插件使用与切换(解决客户端兼容)
    • 查看用户认证方式:SELECT user, host, plugin FROM mysql.user;
    • 将某用户切换为 mysql_native_password(兼容旧客户端):
      • ALTER USER ‘用户名’@‘主机’ IDENTIFIED WITH mysql_native_password BY ‘新密码’;
      • FLUSH PRIVILEGES;
    • 全局默认认证方式(对新创建用户生效):
      • 编辑 /etc/mysql/mysql.conf.d/mysqld.cnf,在 [mysqld] 下添加:default_authentication_plugin=mysql_native_password
      • 重启:sudo systemctl restart mysql
    • root@localhost 改回 auth_socket(仅本机 sudo 免密登录):
      • ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH auth_socket;
      • FLUSH PRIVILEGES;
  • 安装 InnoDB 存储引擎插件(仅当发行版将 InnoDB 作为可加载插件时)
    • 安装:INSTALL PLUGIN InnoDB SONAME ‘ha_innodb.so’;
    • 验证:SHOW PLUGINS LIKE ‘InnoDB’;
    • 建表指定引擎:CREATE TABLE t(id INT) ENGINE=InnoDB;
  • 安装 InnoDB memcached 插件(示例,MySQL 5.6+)
    • 准备配置:mysql -u root -p < /usr/share/mysql/innodb_memcached_config.sql
    • 安装插件:INSTALL PLUGIN daemon_memcached SONAME ‘libmemcached.so’;
    • 插件库路径检查:常见在 /usr/lib/mysql/plugin/(不同版本可能不同)
  • 安装第三方插件 HandlerSocket(示例)
    • 安装依赖:sudo apt install build-essential libmysqlclient-dev libssl-dev
    • 下载源码并编译,将生成的 .so 放入插件目录(如 /usr/lib/mysql/plugin/
    • 在 MySQL 内安装:INSTALL PLUGIN handlersocket SONAME ‘handlersocket.so’;
    • 注意:第三方插件非官方包,需自行评估稳定性与安全性

三 常见问题与排查

  • 插件目录或文件不存在
    • 确认 .so/usr/lib/mysql/plugin/ 且权限正确;必要时调整 plugin_dir 配置并重启
  • 安装时报 “Plugin ‘xxx’ is not loaded”
    • 检查 SHOW PLUGINS; 输出;确认 SONAME 与文件一致;必要时重启后再安装
  • 认证插件导致客户端连不上
    • 旧客户端优先使用 mysql_native_password;或保持 caching_sha2_password 并在客户端启用相应驱动/参数
  • 修改配置未生效
    • 修改 /etc/mysql/mysql.conf.d/mysqld.cnf 后执行:sudo systemctl restart mysql
  • 忘记 root 密码或无法登录
    • 使用 debian-sys-maint 登录:sudo mysql --defaults-file=/etc/mysql/debian.cnf
    • 之后可 ALTER USER 重置密码或调整认证插件,再 FLUSH PRIVILEGES;

四 安全与运维建议

  • 避免直接开放 root 远程登录,建议为远程访问创建专用用户并授予最小权限
  • 变更权限或认证方式后务必执行 FLUSH PRIVILEGES;
  • 谨慎启用第三方插件,优先选择 APT 官方仓库提供的包;自行编译需校验来源与完整性
  • 定期备份与审计,生产环境变更前在测试环境验证插件兼容性与性能影响

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Ubuntu MySQL插件如何使用
本文地址: https://pptw.com/jishu/757320.html
Ubuntu MySQL复制如何配置 Ubuntu MySQL连接如何设置

游客 回复需填写必要信息