MySQL 运维实战课
张新铭(俊达)
云掣科技资深数据库专家,前淘宝网、支付宝数据库专家
1237 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 50 讲
课后题答疑 (1讲)
MySQL 运维实战课
15
15
1.0x
00:00/00:00
登录|注册

基础篇|课后题答疑

你好,我是俊达。
这一讲主要是对专栏基础篇中思考题的一个统一的答疑。实际上在评论区中, 我也看到了同学们对很多思考题的精彩解答。这里做一个汇总和补充,方便大家查看。

第 1 讲

问题:早期的版本中,登录服务器本地的 MySQL 默认不需要密码。这存在一定的安全风险,因为你只要能登录到数据库服务器,就能访问这台服务器上的 MySQL 数据库。从 5.7 版本开始,给数据库的 root 账号设置了默认密码,首次登录时需要先修改密码。在部署一套 MySQL 数据库环境时,小明按规范修改了数据库 root 账号的密码,但是当时忘了将 root 密码记录下来,因此小明向你寻求帮助。你有办法帮小明解决这个问题吗?
@飒飒秋风 在评论区提供了这个问题的标准处理方法。
关闭 MySQL。
kill <mysqld进程的pid>
添加–skip-grant-tables 参数,启动 MySQL。
mysqld_safe --defaults-file=my.cnf --skip-grant-tables --skip-networking &
执行 flush privileges,加载权限表。
flush privileges;
执行 alter user 命令,修改 root 用户密码
alter user 'root'@'localhost' identified by 'password';
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
  • 解释
  • 总结

1. 解决MySQL root账号忘记密码的方法:通过关闭MySQL、添加--skip-grant-tables参数启动MySQL、执行flush privileges和alter user命令修改root用户密码,最后重新启动MySQL。 2. 针对将数据库放到公网的风险和安全方法:限制来源IP、使用复杂密码和最小权限原则、使用加密传输和验证客户端证书。 3. 分析和解决JDBC访问MySQL报错的方法:检查wait_timeout的值、验证被断开的连接的wait_timeout设置、使用其他方法验证空闲超时时间。 4. MySQL中lower_case_table_names参数的设置建议:建议统一将参数设置为1,以统一转换表名为小写,避免混乱和跨操作系统的数据库迁移问题。 5. 对员工管理系统中表结构存在的问题和改进建议:包括字段长度设置、日期类型使用、主键设置、图片存储等方面的改进建议。 6. 备库复制中断问题分析:主要原因是备库上innodb_strict_mode的全局值为ON,导致建表失败,解决方法是临时将innodb_strict_mode的全局值修改成OFF,再开启复制。 7. 数据初始化脚本导致乱码问题分析:乱码问题是由于set names指定的字符集和终端实际的编码不一致,解决方法是删除有问题的数据,设置正确的字符集后,重新写入数据。 8. 数据复制大表到目标库的解决方法:使用多线程处理数据查询和插入操作,使用批量插入和分段查询数据来提高复制速度. 9. 加快mysqldump备份数据恢复速度的方法:可以根据dump文件的特点,将文件分割成多个文件,以提升恢复速度.

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《MySQL 运维实战课》
新⼈⾸单¥59
立即购买
登录 后留言

精选留言

由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论
显示
设置
留言
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部