MySQL

Eric讨论 | 贡献2020年9月18日 (五) 05:59的版本

MySQL,一个开放源码的关系数据库管理系统,读作“My S-Q-L”。MySQL在过去由于性能高、成本低、可靠性好,已经成为最流行的开源数据库。但被甲骨文公司收购后,大幅调涨MySQL商业版的售价,且甲骨文公司不再支持另一个自由软件项目OpenSolaris的发展,MySQL的创始人麦克尔·维德纽斯以MySQL为基础,成立分支计划MariaDB。而原先一些使用MySQL的开源软件逐渐转向MariaDB或其它的数据库。例如维基百科已于2013年正式宣布将从MySQL迁移到MariaDB数据库。

简介

时间轴

  • 2008年1月16日,Sun(太阳微系统)正式收购MySQL。
  • 2009年4月20日,甲骨文公司宣布以每股9.50美元,74亿美元的总额收购Sun电脑公司。
  • 2013年6月18日,甲骨文公司修改MySQL授权协议,移除了GPL。但随后有消息称这是一个bug。

安装

使用Docker安装

安装Docker,然后直接从官网镜像启动一个mysql容器,并设置root用户密码为123456。

docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql

了解更多 >> Docker Hub:MySQL


Ubuntu上安装

可能遇到问题

  • 主机只有1G内存,mysql却占用很大内存。

在终端输入top查看各程序cup和内存等占用率,然后输入M,使结果按内存大小排序,可以看到mysqld的占用率高。直接修改mysql服务器的配置文件my.cnf,如果使用mysql容器,先进入容器终端。

#进入某个容器
docker exec -it some-mysql bash
#在容器内安装vim
apt-get update
apt-get install vim

#打开并修改my.cnf文件
vim /etc/mysql/my.cnf
#在文件里加入如下配置
performance_schema_max_table_instances=400  
table_definition_cache=400  
table_open_cache=256
performance_schema = off

#重启mysql
service mysql stop
service mysql start
#输入exit,退出容器,然后重启该容器
docker restart some-mysql 
#用top命令查看内存占用率


资源

官网

相关网站

参考文献