1、MySQL版本区分
MySQL目前衍生出来很多版本,有的版本是付费的,有的是免费的,具体怎么区分呢
- MySQL Community Server 社区版本,开源免费,但不提供官方技术支持。
- MySQL Enterprise Edition 企业版本,需付费,可以试用30天。
- MySQL Cluster 集群版,开源免费。可将几个MySQL Server封装成一个Server。
- MySQL Cluster CGE 高级集群版,需付费。
- MySQL Workbench(GUI TOOL)一款专为MySQL设计的ER/数据库建模工具。它是著名的数据库设计工具DBDesigner4的继任者。MySQL Workbench又分为两个版本,分别是社区版(MySQL Workbench OSS)、商用版(MySQL Workbench SE)。
MySQL Community Server 是开源免费的,这也是我们通常用的MySQL的版本。根据不同的操作系统平台细分为多个版本,下面我们以阿里云的CentOS平台为例来说明。
2、安装过程
下载MySQL版本,MySQL历史版本下载地址 MySQL :: Download MySQL Community Server (Archived Versions)
我们不需要额外的东西,选择minimal版本即可
上传mysql安装包到服务器,我上传到了自己的software目录下
scp /Users/********/Downloads/mysql-8.0.26-linux-glibc2.17-x86_64-minimal-rebuild.tar.xz root@111.23.45.67:/software
把安装包拷贝到usr目录下
cp mysql-8.0.26-linux-glibc2.17-x86_64-minimal-rebuild.tar.xz /usr
解压安装包
tar -xvf mysql-8.0.26-linux-glibc2.17-x86_64-minimal-rebuild.tar.xz
重命名到usr/local/mysql
mv mysql-8.0.26-linux-glibc2.17-x86_64-minimal-rebuild /usr/local/mysql
安装mysql依赖的libaio库
yum install libaio
创建配置文件
touch /etc/my.cnf
vi /etc/my.cnf
复制如下内容到my.cnf中
[mysqld]
basedir=/usr/local/mysql # 基本路径
datadir=/usr/local/mysql/data #数据路径 (先在/usr/local/mysql建data目录)
socket=/usr/local/mysql/data/mysql.sock # socket文件
symbolic-links=0
log-error=/usr/local/mysql/data/mysqld.log #错误日志
pid-file=/usr/local/mysql/data/mysqld.pid #pid文件
[mysql]
socket=/usr/local/mysql/data/mysql.sock
配置环境变量
vim /etc/profile
复制如下内容到profile文件
export MYSQL_HOME=/usr/local/mysql
export MYSQL_PATH=$MYSQL_HOME/bin
export PATH=$PATH:$MYSQL_PATH
创建用户组和用户
groupadd mysql
useradd -r -g mysql mysql
mysql初始化
/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
./mysql.server start
系统服务配置,拷贝mysql.server文件到etc
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql //拷贝mysql.server
chmod +x /etc/init.d/mysql //添加可执行权限。
chkconfig --add mysql // 注册启动服务
chkconfig --list //查看是否添加成功
出现下图说明添加成功
至此,mysql就安装成功了
修改密码,由于刚才的安装过程没有设置密码,所以需要设置mysql的密码
首先修改my.cnf文件,设置可以免密登录,在[mysqld]下加入如下内容
skip-grant-tables
重启mysql服务
# 重启mysql服务
service mysql restart
# 无密码进入,直接回车即可
mysql -u root -p
# 修改root的密码
alert user 'root'@'localhost' identified by '密码';
# 刷新保存,一定要有这个操作
flush privileges;
最后及得修改my.cnf文件,不然还可以继续跳过密码登录
允许root账户远程访问,不然远端机器连接时会报一个1103不允许远程连接的错误
如果遇到上边的错误,再改一下密码的存储方式
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码';
flush privileges;
最终成功连接
参考文章
centos安装mysql的三种方式 - 小明大强 - 博客园