2025莞纺大数据竞赛队
CentOS 7.9 大数据基础配置
Linux虚拟机IP分配
Hadoop+JDK配置
Zookeeper集群配置
Kafka配置
Hadoop搭建
数据可视化总结
数据分析总结
CentOS 7.9 基础指令大全
Flume安装配置
MySQL安装配置与运维
用户画像数据库表及数据.sql
本文档使用 OkDoc 发布
-
+
首页
MySQL安装配置与运维
### 安装 1. 解压`mysql-5.7.44-1.el7.x86_64.rpm-bundle.tar`到/opt/module/ 2. 先试着安装`mysql-community-common-5.7.44-1.el7.x86_64.rpm`你会发现安装不了,有一个rpm软件包导致依赖问题出错,执行`yum remove -y mariadb-libs`删除这个软件包之后就可以正常安装MySQL了 安装错误界面:  3. 按照顺序(mysql-community-common、 mysql-community-libs、mysql-community-libs-compat 、 mysql-community-client 和 mysql-community-server)安装完成之后执行指令`systemctl start mysqld`启动MySQL服务,然后输入`sudo grep 'temporary password' /var/log/mysqld.log`获取初始密码来登录MySQL >i **无法获取临时秘钥** > > 如果输入获取临时秘钥指令没有输出任何内容,请输入`systemctl start mysqld`启动MySQL服务后再试 5. 登录成功之后输入`ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';` 设置新的密码,不如无法执行任何操作 ## 运维 1. 登入之后 2. **添加**<span style="color:#ff3b30">hadoop</span>用户;输入指令`CREATE USER IF NOT EXISTS 'hadoop'@'localhost' IDENTIFIED BY 'Aa123456!';` 3. ==授予 hadoop 仅查询、插入权限==,且作用于 所有库: `GRANT SELECT, INSERT ON *.* TO 'hadoop'@'localhost';` 4. ==创建数据库 bigdata== `CREATE DATABASE IF NOT EXISTS bigdata DEFAULT CHARACTER SET utf8mb4;` 5. ==为 bigdata 创建专属用户 bdadmin 并授予 该库所有权限== `CREATE USER 'bdadmin'@'localhost' IDENTIFIED BY 'Bd@123456!'; GRANT ALL PRIVILEGES ON bigdata.* TO 'bdadmin'@'localhost';` 6. <span style="color:#069eea">刷新权限</span>(MySQL 8 可省略,但写上无害)`FLUSH PRIVILEGES;` 7. <span style="color:#069eea">查看 bdadmin 的权限</span> `SHOW GRANTS FOR 'bdadmin'@'localhost';`  8. <span style="color:#0568d1">查看MySQL版本</span>查看MySQL版本:`SELECT @@version; -- 或 STATUS;`  9. <span style="color:#0568d1">查看默认字符集</span> `SHOW VARIABLES LIKE 'character_set_server';`  10. 开启<span style="color:#0568d1">慢查询日志</span>,阈值 10 秒 `-- 当前会话生效(重启失效,测试用) SET GLOBAL slow_query_log = 'ON'; SET GLOBAL long_query_time = 10; SET GLOBAL slow_query_log_file = '/var/lib/mysql/mysql-slow.log'; -- 如需永久生效,把上面三行写入 /etc/my.cnf 后重启`  11. 把 root 密码改为 ==12!@qwQW==: `ALTER USER 'root'@'localhost' IDENTIFIED BY '12!@qwQW';` 12. ==备份 bigdata 数据库==(Shell 命令): `# 退出 mysql 客户端后在 Linux 执行 mysqldump -u root -p'12!@qwQW' --single-transaction --routines --triggers --events bigdata > /tmp/bigdata_$(date +%F).sql` 13. 查看服务器运行时间(**==Uptime==**) `SHOW GLOBAL STATUS LIKE 'Uptime';` 14. 查看两个==核心系统变量== `SHOW VARIABLES WHERE Variable_name IN ('max_connections','innodb_buffer_pool_size');`  15. 把==查询缓存设为 32 MB== 注意:**MySQL 8.0 已 彻底移除查询缓存**,变量 ==query_cache_size 不复存在==。 若课程强制要求,可演示“旧版本写法”并说明已废弃:`SET GLOBAL query_cache_size = 32*1024*1024; SET GLOBAL query_cache_type = ON;` 16. 进入库 `USE bigdata;` 17. 创建酒店表 newhotel ``` CREATE TABLE newhotel ( id INT PRIMARY KEY, hotel_name VARCHAR(100) NOT NULL, city VARCHAR(50), province VARCHAR(50), level VARCHAR(20), room_num INT, score DOUBLE, comment_num VARCHAR(20) ); ``` 18. 创建评论表 newcomment ``` CREATE TABLE newcomment ( id INT PRIMARY KEY, name VARCHAR(100), commentator VARCHAR(50), score DOUBLE, comment_time DATETIME, content VARCHAR(500) ); ``` 19. 插入酒店数据 ``` INSERT INTO newhotel VALUES (1,'雅乐轩酒店','北京','北京','五星级',200,4.5,'356'), (2,'豪景大酒店','上海','上海','四星级',150,4.3,'289'), (3,'清风旅馆','广州','广东','三星级',100,4.0,'190'); ``` 20. 插入评论数据 ``` INSERT INTO newcomment VALUES (1,'雅乐轩酒店','张三',5.0,'2024-01-15 10:00:00','非常满意的入住体验'), (2,'豪景大酒店','李四',4.2,'2024-01-14 09:30:00','位置优越,服务周到'), (3,'清风旅馆','王五',3.8,'2024-01-13 08:45:00','性价比高,环境舒适'); ``` 21. 列出评分 >4.0 的酒店(城市、省份) ``` SELECT hotel_name, city, province FROM newhotel WHERE score > 4.0; ``` 22. 统计每个城市的酒店数量,降序 ``` SELECT city, COUNT(*) AS hotel_cnt FROM newhotel GROUP BY city ORDER BY hotel_cnt DESC; ``` 23. 最近一周内前 10 条最高评分评论(含酒店名称) ``` SELECT n.name, c.content, c.score FROM newcomment c JOIN newhotel n ON c.name = n.hotel_name WHERE c.comment_time >= NOW() - INTERVAL 1 WEEK ORDER BY c.score DESC, c.comment_time DESC LIMIT 10; ``` 24. 所有酒店的平均评分,无评分显示“未评分” ``` SELECT hotel_name, CASE WHEN AVG(score) IS NULL THEN '未评分' ELSE ROUND(AVG(score),2) END AS avg_score FROM newhotel GROUP BY hotel_name ORDER BY AVG(score) DESC; ``` 25. 每个省份评分最高的酒店 ``` SELECT province, hotel_name, score FROM ( SELECT *, RANK() OVER (PARTITION BY province ORDER BY score DESC) AS rk FROM newhotel ) t WHERE rk = 1; ```
MARKJY
2025年12月5日 11:28
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
PDF文档(打印)
分享
链接
类型
密码
更新密码