MySQL 9.0 风云再起:全面解析最新创新版发布!

打印 上一主题 下一主题

主题 891|帖子 891|积分 2673


  

  MySQL 9.0.0 变动(2024-07-01,创新版本)

  删除参数
  身份验证 在 MySQL 8.0 中弃用的插件已被删除,并且服务器不再接受来自不具备相应能力的旧客户端步伐的认证请求。为了向后兼容,MySQL 客户端仍旧保留了一种方式,即将客户端端内建的认证插件转换为动态可加载的插件。
  在 MySQL 8.0 中,默认的认证插件已更改为 caching_sha2_password(详见 Caching SHA-2 Pluggable Authentication)。这些改动导致以下服务器选项和变量被移除:
  

  • 服务器选项 --mysql-native-password
  • 服务器选项 --mysql-native-password-proxy-users
  • 服务器系统变量 default_authentication_plugin
  废弃列
  Performance Schema variables_info 表中的 min_value 和 max_value 列也已被废弃,并可能在未来的 MySQL 版本中移除。推荐使用 variables_metadata 表中的 min_value 和 max_value 列,这两者提供了雷同的信息。
  新增表
  Performance Schema中添加了两张新表,详细如下:
  

  • variables_metadata 表:提供关于系统变量的一般信息。这些信息包括每个 MySQL 服务器辨认的系统变量的名称、作用域、类型、范围(适用时)、以及描述。
  • global_variable_attributes 表:提供关于由服务器分配给全局系统变量的属性-值对的信息。
  这些新表的引入旨在取代已废弃的 variables_info 表中的 min_value 和 max_value 列,为用户提供更准确和全面的系统变量信息。这些变动使得 MySQL 的性能模式能够更好地支持系统变量的管理和监控,有助于开辟职员和管理员更好地理解和优化数据库的性能。
  SQL 语法说明
  1. EXPLAIN ANALYZE FORMAT=JSON INTO @variable select_stmt
复制代码
这个语法允许将分析查询语句的执行筹划以 JSON 格式生存到名为 @variable 的用户变量中。随后可以将这个变量作为任何 MySQL JSON 函数的参数使用(拜见 JSON Functions)
  1. 示例:mysql> EXPLAIN FORMAT=JSON INTO @root select * from el_company_logo where company_id=1;
  2. ysql> SELECT @root;{
  3.   "query_block": {
  4.     "select_id": 1,
  5.     "cost_info": {
  6.       "query_cost": "0.35"
  7.     },
  8.     "table": {
  9.       "table_name": "el_company_logo",
  10.       "access_type": "ALL",
  11.       "possible_keys": [
  12.         "idx_company_id"
  13.       ],
  14.       "rows_examined_per_scan": 1,
  15.       "rows_produced_per_join": 1,
  16.       "filtered": "100.00",
  17.       "cost_info": {
  18.         "read_cost": "0.25",
  19.         "eval_cost": "0.10",
  20.         "prefix_cost": "0.35",
  21.         "data_read_per_join": "1K"
  22.       },
  23.       "used_columns": [
  24.         "id",
  25.         "logo_image",
  26.         "company_id",
  27.         "create_user_id",
  28.         "create_time"
  29.       ],
  30.       "attached_condition": "(`db1`.`el_company_logo`.`company_id` = 1)"
  31.     }
  32.   }
  33. } |
复制代码
下载地址
  MySQL :: Download MySQL Community Server
  

  安装依赖
  1. yum -y install lrzsz wget perl-Digest-MD5 numactl ncurses ncurses-devel openssl-devel bison gcc gcc-c++ make
复制代码
解压
  1. [root@test19-server08 ~]# tar xvf mysql-9.0.0-1.el8.x86_64.rpm-bundle.tar
  2. -rw-r--r-- 1       7155 31415  15M Jun  9 22:19  mysql-community-client-9.0.0-1.el8.x86_64.rpm
  3. -rw-r--r-- 1       7155 31415  29M Jun  9 22:19  mysql-community-client-debuginfo-9.0.0-1.el8.x86_64.rpm
  4. -rw-r--r-- 1       7155 31415 4.7M Jun  9 22:20  mysql-community-client-plugins-9.0.0-1.el8.x86_64.rpm
  5. -rw-r--r-- 1       7155 31415 4.7M Jun  9 22:20  mysql-community-client-plugins-debuginfo-9.0.0-1.el8.x86_64.rpm
  6. -rw-r--r-- 1       7155 31415 696K Jun  9 22:20  mysql-community-common-9.0.0-1.el8.x86_64.rpm
  7. -rw-r--r-- 1       7155 31415 7.1M Jun  9 22:20  mysql-community-debuginfo-9.0.0-1.el8.x86_64.rpm
  8. -rw-r--r-- 1       7155 31415  21M Jun  9 22:20  mysql-community-debugsource-9.0.0-1.el8.x86_64.rpm
  9. -rw-r--r-- 1       7155 31415 8.3M Jun  9 22:20  mysql-community-devel-9.0.0-1.el8.x86_64.rpm
  10. -rw-r--r-- 1       7155 31415 2.3M Jun  9 22:20  mysql-community-icu-data-files-9.0.0-1.el8.x86_64.rpm
  11. -rw-r--r-- 1       7155 31415 1.6M Jun  9 22:20  mysql-community-libs-9.0.0-1.el8.x86_64.rpm
  12. -rw-r--r-- 1       7155 31415 1.5M Jun  9 22:20  mysql-community-libs-compat-9.0.0-1.el8.x86_64.rpm
  13. -rw-r--r-- 1       7155 31415 2.9M Jun  9 22:20  mysql-community-libs-compat-debuginfo-9.0.0-1.el8.x86_64.rpm
  14. -rw-r--r-- 1       7155 31415 2.7M Jun  9 22:21  mysql-community-libs-debuginfo-9.0.0-1.el8.x86_64.rpm
  15. -rw-r--r-- 1       7155 31415  62M Jun  9 22:21  mysql-community-server-9.0.0-1.el8.x86_64.rpm
  16. -rw-r--r-- 1       7155 31415  26M Jun  9 22:21  mysql-community-server-debug-9.0.0-1.el8.x86_64.rpm
  17. -rw-r--r-- 1       7155 31415 161M Jun  9 22:21  mysql-community-server-debug-debuginfo-9.0.0-1.el8.x86_64.rpm
  18. -rw-r--r-- 1       7155 31415 244M Jun  9 22:21  mysql-community-server-debuginfo-9.0.0-1.el8.x86_64.rpm
  19. -rw-r--r-- 1       7155 31415 351M Jun  9 22:22  mysql-community-test-9.0.0-1.el8.x86_64.rpm
  20. -rw-r--r-- 1       7155 31415  29M Jun  9 22:23  mysql-community-test-debuginfo-9.0.0-1.el8.x86_64.rpm
复制代码
安装
  1. rpm -ivh mysql-community-common-9.0.0-1.el8.x86_64.rpm
  2. rpm -ivh mysql-community-client-plugins-9.0.0-1.el8.x86_64.rpm
  3. rpm -ivh mysql-community-libs-9.0.0-1.el8.x86_64.rpm
  4. rpm -ivh mysql-community-client-9.0.0-1.el8.x86_64.rpm
  5. rpm -ivh mysql-community-icu-data-files-9.0.0-1.el8.x86_64.rpm
  6. rpm -ivh mysql-community-libs-compat-9.0.0-1.el8.x86_64.rpm
  7. rpm -ivh mysql-community-server-9.0.0-1.el8.x86_64.rpm
复制代码
初始化
  1. mysqld --initialize
复制代码
目次授权
  1. chown mysql:mysql /var/lib/mysql -R
复制代码
启动mysql
  1. /bin/systemctl start mysqld.service
  2. /bin/systemctl status mysqld.service
复制代码
表现mysql的随秘密码
  1. 输入:grep 'temporary password' /var/log/mysqld.log
复制代码
运行 MySQL 安装安全脚本  (也可使用第9部手动操纵,二者选其一)
  为了增强 MySQL 的安全性,运行 mysql_secure_installation 脚本:
  1. shell > mysql_secure_installation
  2. 根据提示完成以下操作:
  3. 输入临时 root 密码
  4. 设置新的 root 密码
  5. 移除匿名用户
  6. 禁止 root 远程登录
  7. 移除测试数据库
  8. 重新加载权限表
复制代码
修改密码
  1. 修改密码:ALTER USER 'root'@'localhost' IDENTIFIED BY 'tMKmf3fdggim!vfdv1';
  2. 查看密码策略:SHOW VARIABLES LIKE 'validate_password%';
  3. 修改密码长度:set global validate_password.length=1;(长度)
  4. 修改密码等级:set global validate_password.policy=0;(等级)
复制代码
   公众号内直接回复加群也可以,扫码加群也可以,以为帖子写的不错,点点关注,点点赞,多多转载。
  加入数据库技能交换群:
  

  进群福利:
  1、知识共享与学习机会
  2、问题求助与解决支持
  3、技能沉淀和分享平台
  4、实时了解行业动态

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

美食家大橙子

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表