一、使用通用二进制文件安装MySQL
二进制包的MySQL目录
| 目录 | 目录内容 |
|---|---|
| bin | mysqld服务器、客户端和实用程序 |
| docs | 信息格式的 MySQL 手册 |
| man | Unix手册 |
| include | 包含(头)文件 |
| lib | 库 |
| share | 用于数据库安装的错误消息、字典和 SQL |
| support-files | 其他支持文件 |
1.从Linux 平台上的压缩tar文件二进制分发版安装 MySQL
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.10-linux-glibc2.5-x86_64.tar.gz
2.安装libaio库,MySQL依赖libaio库
如果此库未在本地安装,则数据目录初始化和后续服务器启动步骤失败,centos系统默认安装
yum install libaio
3.检查之前是否安装其它版本数据库
rpm -qa |grep mysql
rpm -qa |grep mariadb
yum -y remove 数据库名 如果以安装请使用此命令卸载
4.创建一个MySQL用户和组
groupadd mysql
useradd -r -g mysql -s /bin/false mysql
5. 将下载好的二进制包解压到指定目录,重命名,创建数据目录,修改MySQL文件所属主和所属组,最后初始化数据库
一般安装到/usr/local下
重命名是为了保持整洁度
tar xf mysql-5.7.11-linux-glibc2.5-x86_64.tar.gz -C
/usr/local/
cd /usr/local/
mv mysql-5.7.11-linux-glibc2.5-x86_64/ mysql
cd mysql/
mkdir data
chown -R mysql:mysql /usr/local/mysql/
bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

6.配置环境变量并刷新
export PATH=$PATH://usr/local/mysql/bin >> /etc/profile
source /etc/profile
7.生成启动脚本,并启动mysql
cp support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
vim /etc/init.d/mysqld
basedir=/usr/local/mysql //在第46~47行
datadir=/usr/local/mysql/data
/etc/init.d/mysqld start

8.测试并修改root密码
mysql -uroot -p'Px-jHo-qX82Q'
set password for
localhost=password('123456');
exit
mysql -uroot -p'123456'
show databases;


二、使用yum安装MySQL
1.下载MySQL yum仓库发布包并添加yum仓库
这里我提供了yum发布包的百度网盘链接,下载好之后请上传至服务器并解压
链接:https://pan.baidu.com/s/1XuW9GOBQkBdU4W1r1AXYlQ
提取码:udhm
yum localinstall mysql80-community-release-el7-3.noarch.rpm 添加yum仓库
您可以通过以下命令检查 MySQL Yum 存储库是否已成功添加
yum repolist enabled | grep "mysql.*-community.*"

2.选择发布系列
您可以通过以下命令查看MySQL yum仓库中的所有子存储库,并查看哪些是启用或禁止的
yum repolist all | grep mysql

您可以通过以下命令启用或禁止MySQL版本
首先您的平台需要支持yum-config-manager,如果没有请下载
–disable为禁用
–enable为启用
yum -y install yum-utils-1.1.31-54.el7_8.noarch
yum-config-manager --disable mysql80-community
yum-config-manager --enable mysql56-community
您还可以手动编辑/etc/yum.repos.d/mysql-community.repo文件来选择发布系列,然后编辑该enable选项。指定enable=0为禁用,enable=1为启用
[mysql57-community]
name=MySQL 5.7 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
通过以下命令验证是否已经启用和禁用正确的发布系列
yum repolist enabled | grep mysql

3.安装MySQL5.7
yum -y install mysql-community-server
这将安装 MySQL 服务器包 ( mysql-community-server) 以及运行服务器所需组件的包,包括客户端包 ( mysql-community-client)、客户端和服务器的常见错误消息和字符集 ( mysql-community-common) 以及共享客户端库 ( mysql-community-libs) .
卸载MySQL
yum -y remove mysql-community-server
4.启动MySQL服务
systemctl start mysqld 启动MySQL服务
systemctl status mysqld 查看MySQL服务器的状态
systemctl stop mysqld 停止MySQL服务器
5.查看MySQL默认密码并修改密码
查看MySQL默认密码
grep "password" /var/log/mysqld.log
使用MySQL默认密码进入MySQL并修改密码
mysql -uroot -p默认密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '1fhhh@FHHH';
未进入MySQL,使用mysqladmin修改密码
因为这种方式是明文改密,因此不建议

6.查看MySQL验证版本是否安装正确
mysql -V

三、使用源码安装MySQL
1.获取MySQL源码包
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-boost-5.7.16.tar.gz
2.安装依赖包,解决依赖性
yum -y install cmake ncurses* gcc gcc-c++ bison
3.解压安装包,并进入目录(一般解压到/usr/local/下)
tar xf mysql-boost-5.7.16.tar.gz -C /usr/local/
cd /usr/local/
mv mysql-5.7.16/ mysql
4.进入目录安装MySQL
cd mysql
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ #安装目录
-DMYSQL_DATADIR=/usr/local/mysql/data \ #数据库存放目录
-DMYSQL_UNIX_ADDR=/usr/local/mysql/data/mysql.sock \#Unix socket 文件路径
-DWITH_MYISAM_STORAGE_ENGINE=1 \ #安装 myisam 存储引擎
-DWITH_INNOBASE_STORAGE_ENGINE=1 \ #安装 innodb 存储引擎
-DDEFAULT_CHARSET=utf8 \ #使用 utf8 字符
-DDEFAULT_COLLATION=utf8_general_ci \ #校验字符
-DEXTRA_CHARSETS=all \ #安装所有扩展字符集
-DWITH_BOOST=boost/boost_1_59_0/
nake && make install
5.配置MySQL
groupadd mysql
useradd -r -g mysql -s /bin/false mysql
chown mysql:mysql /usr/local/mysql
cd /usr/local/mysql/support-files
cp my-default.cnf /etc/my.cnf
vim /etc/my.cnf
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
6.配置启动脚本
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
# 配置环境变量并生效
vim /etc/profile
PATH=$PATH:$HOME/bin
PATH=$PATH:$HOME/bin:/usr/local/mysql/bin
export PATH
source /etc/profile
7.初始化MySQL,并启动MySQL
如果需要重新初始化,则需要删除生成的data目录中的文件
初始化root密码在初始化完成后的最后一行
mysqld --user=mysql --initialize
/etc/init.d/mysqld start

8.登录MySQL并修改密码
这时登录进去是无法查看数据库的数据的,需要更改密码后在次登录查看
mysql -uroot -p'im*uqysLD84Z'
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

mysql -uroot -p'123456'
show databases;

至此,我们的MySQL就已经安装好了
四、使用docker在Linux上部署MySQL
1.安装docker
之前的文章已经讲述过如果安装docker,这里就不做过多的说明,请参考之前的docker的安装部署这篇文章
2.下载MySQL服务器的docker镜像
该tag是你想拉的图像版本的标签(例如5.5, 5.6,5.7, 8.0,或latest)如果省略将下载最新版。
docker pull mysql/mysql-server:tag
您可以使用如下命令查看下载好的镜像
docker images

3.启动MySQL服务器实例
docker run --name=mysql1 -d mysql/mysql-server:tag
–name为您的服务器容器(mysql1在示例中)提供自定义名称 的选项是可选的;如果未提供容器名称,则会生成一个随机名称。如果先前的docker pull或docker run 命令尚未下载指定名称和标签的 Docker 映像, 则现在会下载该映像。下载完成后,开始对容器进行初始化,运行docker ps命令时,容器会出现在正在运行的容器列表中
例如
查看MySQL初始化完成后,生成的root用户的随机密码
docker logs mysql 2>&1 | grep GENERATED

4.从容器内连接MySQL服务器
在docker容器内启动一个MySQL客户端
docker exec -it mysql1 mysql -uroot -p
密码为刚刚查看的随机密码

由于该 MYSQL_ONETIME_PASSWORD 选项默认为 true,因此在将mysql客户端连接 到服务器后,必须重置服务器 root 密码
重置密码
替换newpassword为您选择的密码。一旦密码被重置,服务器就可以使用了。
ALTER USER 'root'@'localhost' IDENTIFIED BY 'newpassword';
5.从容器外通过shell访问
通过shell访问MySQL服务器
docker exec -it mysql bash
然后,您可以在容器内运行 Linux 命令

例如,要查看容器内服务器数据目录中的内容,请使用以下命令:
ls /var/lib/mysql

6.其它命令
docker start mysql 启动MySQL服务器容器
docker restart mysql 重启MySQL服务器容器
docker stop mysql 停止MySQL服务器容器
docker rm mysql 删除MySQL服务器容器
本文详细介绍了四种在Linux上安装MySQL的方法:通用二进制文件安装,包括安装libaio库、创建用户和组、解压配置等步骤;使用yum安装,涉及下载仓库、选择发布系列、安装和启动MySQL;通过源码安装,包括获取源码、配置和启动MySQL;以及利用Docker部署MySQL,涵盖安装Docker、下载镜像、启动容器和设置密码。

930

被折叠的 条评论
为什么被折叠?



