记录下Docker下安装MySQL数据的操作 前言 在安装MYSQL之前首先需要安装DOCKER。 一条命令安装MySQL docker run --name mysql --privileged=true --restart always -v /home/mysql/data:/var/lib/mysql -v /home/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d mysql:8.2.0 命令解释 --name mysql 设置docker容器名称 --privileged=true 挂载文件权限设置 --restart always 设置 开机后自动重启容器 -v /home/mysql/conf:/etc/mysql/conf.d 挂载配置文件 -v /home/mysql/data:/var/lib/mysql 挂载数据文件 持久化到主机, -e MYSQL_ROOT_PASSWORD=123456 设置数据库root账号密码 -p 3306:3306 端口映射 -d.... DOCKER安装MYSQL8.2.0版本 运维知识
前提 在安装之前需要判断是否已经安装过mysql 方式很多,自行百度 [root@localhost ~]# yum list installed mysql* [root@localhost ~]# rpm –qa|grep mysql* 第一步 下载yum文件 进入mysql官网: https://dev.mysql.com/downloads/repo/yum/ 选择对应的版本下载对应的文件 我是centos7 选择的就是Linux 7 / Oracle Linux 7 第二步 上传yum文件到Linux服务器 将文件上传到服务器上面,然后记住上传的位置。第一步和第二步可以在linux上通过wget 下载yum文件 第三步 设置源文件 [root@localhost mysql]# yum -y install mysql80-community-release-el7-6.noarch.rpm 第四步 耗时比较长 [root@localhost mysql]# yum -y install mysql-community-server 可能存在的问题: 获取 GPG 密.... Linux下安装Mysql8.0 运维知识
服务器是阿里云 1 核 1G 的,运行了一个 mysql,一个 solo,一个 docker,发现内存占用高达 90% 通过命令: ps -auxf | sort -nr -k 4 | head -10 查找到内存占用前十的程序: 不得不说看到 MySQL 占用内存这么高,还是有点蒙圈。 优化过程:修改 MySQL 配置文件。在 etc/my.cnf 当中找到或者添加下列参数 innodb_buffer_pool_size =64M key_buffer_size =32M tmp_table_size = 64M table_open_cache=512 参数的具体设置主要参考下面两篇文章 参考文章 1:https://blog.csdn.net/dc666/article/details/78901341 参考文章 2:https://www.cnblogs.com/chenking/p/10861203.html 最后输入命令重启 MySQL :mysqld restart 查看效果:嗯,还是不错的。 Mysql内存占用较高优化记录 无
前言 之前开发项目的过程当中数据库存储的数据量都不是很大,在表的设计当中就只有一个主键索引。很少接触到数据库的索引,SQL 优化这些东西。公司目前的项目数据达到了百万级别了,让我优化一下慢 SQL,之前是懂一些 SQL 优化和索引相关的理论知识,没有实际操作过,特此记录优化的过程和思路,事实证明,理论和实操还是有不少区别的。 理论知识 SQL 的优化大部分都是和索引相关,所以对索引的相关知识一定要有很深的理解。网上关于索引的文章很多,这里推荐一篇比较好的文章:MySQL性能优化之索引优化 SQL的优化也有对本身SQL代码的优化。比如 not in 和exists这种。详见:sql优化的几种方法 EXPLAIN 语句的运用和了解:MySQL Explain详解 运行SQL,总得有一个执行的顺序吧?SQL语句执行顺序 实际过程 理论是基础,在实际的过程当中需要灵活的运用。特此记录自己在进行优化时的一些操作和心得。 查看执行语句选择的索引,一次查询只会选择一个索引,是mysql自动进行的选择。 但是mysql并不会总是选择我们希望的索引。所以要结合索引的相关知识让mysql选择到我们希....... 记录一次实际过程中的MySql数据库SQL优化 无
学习原因 在开发当中,经常看见有些字段长度是varchar(20)或者varchar(32),但是在自己建表的时候,navicat基本上都是默认的varchar(255)的长度。 所以带着疑问来学习一下数据库表字段长度的设计。 长度限制和字段选择 查阅了资料后,发现了一些关于数据库的长度限制及表设计的相关资料 相关资料: 各个数据库表名和字段名长度限制 MySQL中各种数据类型的长度及在开发中如何选择 MySql数据库表字段命名及设计规范 数据库中存储日期的字段类型到底应该用varchar还是datetime 为什么很多公司要求 mysql 表主键 id 必须是 long 型? 为什么mysql的varchar字符长度会被经常性的设置成255 在仔细阅读上述的相关资料后,算是解决了很多的疑问,也学习到了不少数据库书本上难以学习到的经验。 总的来说就是数据库表名和字段长度是有一个限制的,不是越大就好,在设计创建表字段时也要考虑下字段长度问题,根据一些实际情况选择表当中的字段类型和手动设置一下字段的长度,可以对数据的维护,查询带来效率和性能上的提升。 验证varchar(20)和var...... varchar(20)和varchar(255)的区别,数据库表字段长度设计学习 无