网站目录收录网站方式:1.人工手动审核。2.自助审核(你的网站在权重3、PR4以上,挂上本站友链->点击友链->自动审核通过。)
北京 天津 上海 广东 深圳 河北 河南 新疆 重庆 四川 贵州 湖南 湖北 云南 广西 宁夏 青海 甘肃 陕西
西藏 海南 山东 福建 安徽 浙江 吉林 山西 江西 江苏 辽宁 黑龙 内蒙 澳门 香港 台湾 日本 韩国 美国
当前位置:站长啦网站目录 » 新闻资讯 » 站长新闻 » 技术文档 » 文章详细 订阅RssFeed

[宝塔面板]宝塔面板强制安装mysql8.0的方法

来源:宝塔面板强制安装mysql8.0 浏览:2455次 时间:2020-12-28
简介:mysql8.0那么好,如何在低配服务器安装呢?宝塔面板目前已经集成mysql8.0,但是如果你的内存少于4G就会发现安装不了,如何强制安装呢


mysql8.0新特性


MySQL从5.7一跃直接到8.0,这其中的缘由,咱就不关心那么多了,有兴趣的朋友自行百度,本次的版本更新,在功能上主要有几点:

  账户与安全

  优化器索引

  通用表表达式

  窗口函数

  InnoDB 增强

  JSON 增强





MySQL8.0新特性集锦

 1. 默认字符集由latin1变为utf8mb4

在8.0版本之前,默认字符集为latin1,utf8指向的是utf8mb3,8.0版本默认字符集为utf8mb4,utf8默认指向的也是utf8mb4。

注:在Percona Server 8.0.15版本上测试,utf8仍然指向的是utf8mb3,与官方文档有出入。

2. MyISAM系统表全部换成InnoDB表

系统表全部换成事务型的innodb表,默认的MySQL实例将不包含任何MyISAM表,除非手动创建MyISAM表。

3. 自增变量持久化

在8.0之前的版本,自增主键AUTO_INCREMENT的值如果大于max(primary key)+1,在MySQL重启后,会重置AUTO_INCREMENT=max(primary key)+1,这种现象在某些情况下会导致业务主键冲突或者其他难以发现的问题。自增主键重启重置的问题很早就被发现(https://bugs.mysql.com/bug.php?id=199),一直到8.0才被解决,8.0版本将会对AUTO_INCREMENT值进行持久化,MySQL重启后,该值将不会改变。

4. DDL原子化

InnoDB表的DDL支持事务完整性,要么成功要么回滚,将DDL操作回滚日志写入到data dictionary 数据字典表 mysql.innodb_ddl_log 中用于回滚操作,该表是隐藏的表,通过show tables无法看到。通过设置参数,可将ddl操作日志打印输出到mysql错误日志中。

mysql> set global log_error_verbosity=3;

mysql> set global innodb_print_ddl_logs=1;

mysql> create table t1(c int) engine=innodb;

来看另外一个例子,库里只有一个t1表,drop table t1,t2;

试图删除t1,t2两张表,在5.7中,执行报错,但是t1表被删除,在8.0中执行报错,但是t1表没有被删除,证明了8.0 DDL操作的原子性,要么全部成功,要么回滚。

 

5. 参数修改持久化

MySQL 8.0版本支持在线修改全局参数并持久化,通过加上PERSIST关键字,可以将修改的参数持久化到新的配置文件(mysqld-auto.cnf)中,重启MySQL时,可以从该配置文件获取到最新的配置参数。

例如执行:

set PERSIST expire_logs_days=10 ;

系统会在数据目录下生成一个包含json格式的 mysqld-auto.cnf 的文件,格式化后如下所示,当 my.cnf 和 mysqld-auto.cnf 同时存在时,后者具有更高优先级。

 

6. 新增降序索引

MySQL在语法上很早就已经支持降序索引,但实际上创建的仍然是升序索引,

如下MySQL 5.7 所示,c2字段降序,但是从show create table看c2仍然是升序。

8.0可以看到,c2字段降序。

再来看降序索引在执行计划中的表现,在t1表插入10万条随机数据,

查看select * from t1 order by c1 , c2 desc;的执行计划。从执行计划上可以看出,

5.7的扫描数100113远远大于8.0的5行,并且使用了filesort。

 

7. group by 不再隐式排序

mysql 8.0 对于group by 字段不再隐式排序,如需要排序,必须显式加上order by 子句。

 

8. JSON特性增强

MySQL 8 大幅改进了对 JSON 的支持,添加了基于路径查询参数从 JSON 字段中抽取数据的 JSON_EXTRACT() 函数,以及用于将数据分别组合到 JSON 数组和对象中的 JSON_ARRAYAGG() 和 JSON_OBJECTAGG() 聚合函数。

在主从复制中,新增参数 binlog_row_value_options,

控制JSON数据的传输方式,允许对于Json类型部分修改,在binlog中只记录修改的部分,减少json大数据在只有少量修改的情况下,对资源的占用。

 

9. redo & undo 日志加密

增加以下两个参数,用于控制redo、undo日志的加密。

innodb_undo_log_encrypt

innodb_undo_log_truncate

 

10. innodb select for update跳过锁等待

select ... for update,select ... for share(8.0新增语法) 添加 NOWAIT、SKIP LOCKED语法,跳过锁等待,或者跳过锁定。

在5.7及之前的版本,select...for update,如果获取不到锁,会一直等待,直到innodb_lock_wait_timeout超时。

 

在8.0版本,通过添加nowait,skip locked语法,能够立即返回。

如果查询的行已经加锁,那么nowait会立即报错返回,

而skip locked也会立即返回,只是返回的结果中不包含被锁定的行。

 

11. 增加SET_VAR语法

在sql语法中增加SET_VAR语法,动态调整部分参数,有利于提升语句性能。

SELECT /*+ SET_VAR(sort_buffer_size = 16M) */ id  FROM test ORDER id ;

INSERT  /*+ SET_VAR(foreign_key_checks=OFF) */ INTO test(NAME) VALUES(1);

 

12. 支持不可见索引

使用INVISIBLE关键字在创建表或者进行表变更中设置索引是否可见。

索引不可见只是在查询时优化器不使用该索引,即使使用force index,

优化器也不会使用该索引,同时优化器也不会报索引不存在的错误,因为索引仍然真实存在,在必要时,也可以快速的恢复成可见。

 

# 创建不可见索引

CREATE TABLE t2(c1 INT,c2 INT,INDEX idx_c1_c2(c1,c2 DESC) invisible );

# 索引可见

ALTER TABLE t2 ALTER INDEX idx_c1_c2 visible;

# 索引不可见

ALTER TABLE t2 ALTER INDEX idx_c1_c2 invisible;

 

13. 新增innodb_dedicated_server参数

能够让InnoDB根据服务器上检测到的内存大小自动配置innodb_buffer_pool_size,innodb_log_file_size,innodb_flush_method三个参数。

 

14. 日志分类更详细

在错误信息中添加了错误信息编号[MY-010311]和错误所属子系统[Server]

 

15. undo空间自动回收

innodb_undo_log_truncate参数在8.0.2版本默认值由OFF变为ON,默认开启undo日志表空间自动回收。

innodb_undo_tablespaces参数在8.0.2版本默认为2,当一个undo表空间被回收时,还有另外一个提供正常服务。

innodb_max_undo_log_size参数定义了undo表空间回收的最大值,当undo表空间超过这个值,该表空间被标记为可回收。

 

15. 增加资源组

MySQL 8.0新增了一个资源组功能,用于调控线程优先级以及绑定CPU核。

MySQL用户需要有 RESOURCE_GROUP_ADMIN权限才能创建、修改、删除资源组。

在Linux环境下,MySQL进程需要有CAP_SYS_NICE 权限才能使用资源组完整功能。

 

默认提供两个资源组,分别是USR_default,SYS_default

创建资源组:

create resource group test_resouce_group type=USER vcpu=0,1 thread_priority=5;

将当前线程加入资源组:

SET RESOURCE GROUP test_resouce_group;

将某个线程加入资源组:

SET RESOURCE GROUP test_resouce_group FOR thread_id;

查看资源组里有哪些线程:

select * from Performance_Schema.threads where

RESOURCE_GROUP='test_resouce_group';

修改资源组:

alter resource group test_resouce_group vcpu = 2,3 THREAD_PRIORITY = 8;

删除资源组 :

drop resource group test_resouce_group;

 

16. 增加角色管理

角色可以认为是一些权限的集合,为用户赋予统一的角色,权限的修改直接通过角色来进行,无需为每个用户单独授权。

 

17、MySQL8.0现在支持窗口函数(over)和公用表表达式(with)。毫无疑问,这是两个最重要的Post-SQL-92功能。

 

18、8.0.12的优化是,新增了一个算法 ALGORITHM=INSTANT,专门处理只需要修改元数据就可以完成的变更,这个就可以相对比较方便地直接使用了,不需要担心从库延迟。

    目前支持的操作是:

  1.添加新列。已知限制条件如下:

  不能与其他不支持INSTANT算法的alter子语句合并在一起。

   只能添加在表列的末尾。

  不能用于innodb的压缩表(ROW_FORMAT=COMPRESSED)。

  目标表不能包含全文索引。

  目标表不能是临时表。

  目标表不能是数据字典表。

  这种添加方式下,不会计算行长度是否合适,这个计算会在发生insert或者update的时候处理。

   2. 添加或者删除虚拟列。

   3. 添加或者去掉列的默认值。

   4. 修改 enum,set 列类型的定义(题外话,有多少人知道并在用这个?)

   5. 修改索引类型。

   6. 重命名表名称。

 

Mysql8.0初始化

出现的问题:

  1. 在安装MySQL8.0时,修改临时密码,因密码过于简单(如:123456),不符合MySQL密码规范,会触发一个报错信息:

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements。

 

免密登陆后无法修改密码:

[(none)] >alter user 'root'@'%' identified with mysql_native_password by 'MyNewPass4!';

ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement




mysql8.0那么好,如何在低配服务器安装呢?宝塔面板目前已经集成mysql8.0,但是如果你的内存少于4G就会发现安装不了,如何强制安装呢


所以就只有强制在宝塔面板中安装mysql8.0。

低配置服务器在宝塔面板中安装mysql8.0方法

远程连接到服务器中,进入/www/server/panel/install并执行下面代码。

编译安装mysql8.0,请在远程控制台中输入下面脚本:

wget http://download.bt.cn/install/0/mysql.sh
bash mysql.sh install 8.0

极速安装mysql8.0,请在远程控制台中输入下面脚本

wget http://download.bt.cn/install/1/mysql.sh
bash mysql.sh install 8.0

将8.0替换成你要安装的mysql版本。

请注意:如果你已经安装了数据库,上面的命令会卸载删除当前数据库及数据,请提前备份,一定要提前备份

这样低内存服务器在宝塔面板安装Mysql8.0就实现了!


0

版权与免责声明:

凡注明稿件来源的内容均为转载稿或由网友用户注册发布,本网转载出于传递更多信息的目的;如转载稿涉及版权问题,请作者联系我们,同时对于用户评论等信息,本网并不意味着赞同其观点或证实其内容的真实性;


本文地址:https://top.cnzzla.com/artinfo/67659.html

好玩的手游下载

猜你喜欢

推荐站点

  • 国厨盛宴国厨盛宴

    佛山市南海区嘉怡西餐厅(简称\"国厨盛宴\")是一家专注于珠三角地区的高端餐饮定制服务企业。在嘉怡西式餐饮为基础,整合了国力餐饮策划公司、国邦餐饮咨询公司、焰渝餐饮管理公司。于2016年3月正式更名为“广东国厨盛宴餐饮定制”, 公司出品全部来自香港、广东十年以上中西餐饮宴会实践经验丰富的业内专业星级大厨,国厨盛宴是融合了中西宴会外卖特色具一体,积累了多年的实践经验的一家公司。 国厨盛宴的餐房、现场执行及客户服务均由香港资深专业人士负责,拥有丰富的餐饮定制配餐服务管理经验及餐饮行饮服务团队,从客服、采购、厨业经营经验。 无论是大型商业活动(100-3000人)还是小型(20-100人)的私人宴请,无论您的活动是在室内、室外、办公室,还是在公园、体育场、展厅、发布中心、别墅、郊外,都能为您提供超五星级的专业餐饮服务。除了为您提供精致的外烩美食外卖,我们还可以根据您的需要,结合宴会活动的每一环节、流程,为您提供活动策划、会场布置、节目安排、花艺服务等增值服务,为您节省宝贵的时间。

    guochushengyan.com
  • 皇家馬車家纺官网皇家馬車家纺官网

    馬車源自华夏千年礼制,始于“天子驾六”的皇家威仪。馬车,是帝王仪仗,是身份象征,更是东方尊贵生活的传承载体。皇家馬车家纺,承中式皇家礼序,融东方典雅美学,以匠心织就尊贵、舒适、荣耀的中式睡眠美学,让每一户人家,皆藏皇家气度。 皇家馬车家纺品牌源之于承华夏皇家礼序,筑东方品质寝饰。自古以来皇家馬车无论从欧洲皇室到我们中国的华夏文明,车马为礼;皇家馬车,自古便是帝王专属仪仗,象征至高无上的身份、威仪与尊贵。自周代“天子驾六”定礼制,秦汉“金根车”彰皇权,唐宋“大辇”显威仪,明清“銮驾”集大成,皇家馬车,早已沉淀为东方文化中尊贵、典雅、荣耀、传承的核心符号。 皇家馬车家纺,根植中国千年皇家车马文化,1992年源自福建台资企业,已深耕中高端家纺34载。品牌以“传承中式皇家礼序,打造国人轻奢寝居”为初心,将皇家馬车所代表的礼制、尊贵、精工、传承,融入每一件床品的设计与织造。 品牌自创立以来,始终坚守品质为本,引进台湾先进纺织工艺与生产管理体系,严选优质长绒棉、桑蚕丝、天然纤维等高端原材料,全程标准化品控,面料细腻亲肤、健康环保。先后荣获2000年、2012年福建省著名商标荣誉称号,2006获ISO9001:2000质量管理体系认证企业,为产品的品质奠定了坚实基础。凭借过硬品质与深厚品牌底蕴,深受广大消费者信赖与认可,高峰时期全国17个省市均有 皇家馬車专卖店。 2025年由福州东盈家居科技有限公司全面接手操盘运营,焕新升级,生产基地从福建迁移到江苏南通家纺产业核心区,配备行业前沿设备。重塑品牌发展战略,打通线上线下全域渠道。线下设立福州晋安区喜盈门旗舰店,全国门店持续布局扩张。皇家馬车家纺秉持匠心初心,坚持高端品质、亲民定价,让万千家庭,都能用上高品质,皇室级的寝饰,享受舒适精致睡眠生活。 我们萃取中式皇家美学元素——龙凤呈祥、祥云瑞气、织金刺绣、典雅纹样,结合现代家纺工艺,严选高支长绒棉、桑蚕丝等高端原料,以台资精工标准,打造兼具东方贵气与现代舒适的中高端家纺。 从“福建省著名商标”到“家纺行业十大品牌”,皇家馬车家纺始终坚守“高贵不贵,匠心传承”,让千年皇家礼制,化作日常居家的尊贵体验;让每一户中国家庭,都能拥有属于自己的东方皇家睡眠礼遇。

    huangjiamache.mhwz.cn
  • 福州小程序开发福州小程序开发

    福州好小蚁科技提供专业的微信小程序开发、软件定制、手机APP开发、网站开发等高端定制外包服务,价格美丽,服务周到.一对一项目对接,不满意退全款!预约电话:13107632710 胡小春!福州好小蚁科技有限公司是福建福州网站app等技术开发优秀网络公司。

    www.fzant.com
  • 世界时间网世界时间网

    世界时间网为您提供世界各地精准时间,北京时间校准器,标准时间,世界各地时间与北京时间对比,时间换算等,希望对您有所帮助。

    top.cnzzla.com/time
  • 科技镇科技镇

    科技镇 | 关注科技、娱乐、人文、生活!

    www.kejizhen.com

最新优秀网站