Linux安装Mysql

CentOS通过yum安装

查看要对应的yum库,https://dev.mysql.com/downloads/repo/yum/
每个安装包下会有一个类似mysql80-community-release-el6-n.noarch.rpm,替换wget对应的链接

添加源

1
2
wget https://dev.mysql.com/get/mysql80-community-release-el6-n.noarch.rpm
rpm -Uvh mysql80-community-release-el6-n.noarch.rpm

选择mysql安装的版本

如果只需要安装最新版mysql,可以跳过这一步

1
2
#列出可以安装的版本
yum repolist all | grep mysql

可以通过yum-config-manager选择安装的版本

1
2
3
4
5
#安装yum-config-manager,通过yum provides yum-config-manager可以查到在yum-utils包里
yum install -y yum-utils
#禁用最新的版本,开启需要的版本
yum-config-manager --disable mysql80-community
yum-config-manager --enable mysql57-community

也可以直接配置/etc/yum.repos.d/mysql-community.repo
将需要使用的版本的enabled设为1,将现在激活的版本设为0

1
2
3
4
5
6
[mysql80-community]
name=MySQL 8.0 Community Server
baseurl=http://repo.mysql.com/yum/mysql-8.0-community/el/6/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

验证

1
yum repolist enabled | grep mysql

安装

默认选择安装最新的MySQL版本的MySQL,会安装mysql-community-server、client、libs、common

1
yum install mysql-server

启动

1
2
systemctl start mysqld
systemctl status mysqld

初始化

因为版本不同,可能第一次登录没有密码,可以先查看以下文件,为空则没有密码,不为空则使用列出的密码

1
grep 'temporary password' /var/log/mysqld.log

使用此命令运行安全脚本,设置root密码,删除匿名用户,禁止远程root用户登录,删除测试数据库并对其进行访问,并重新加载权限表
MySQL的 validate_password 插件默认安装。这将要求密码至少包含一个大写字母,一个小写字母,一个数字和一个特殊字符,并且总密码长度至少为8个字符。

1
mysql_secure_installation

Ubuntu安装MySQL

1
sudo apt install mysql-server mysql-client libmysqlclient-cev