Skip to main content

MySQL安装

MarshioAbout 3 minMySQL环境搭建

MySQL安装

Linux

CentOS

1、删除MariaDB

官方的 CentOS7 镜像会自带一套 mariadb ,如果是阿里的 CentOS ECS 服务器则不存在这个问题。

# 查看是否有mariaDB
sudo rpm -qa | grep mariadb

# 删除
sudo rpm -e mariadb-libs-5.5.68-1.el7.x86_64

# 如果上面那条语句不行,就强制删除
sudo rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64

# 再检查一遍
sudo rpm -qa | grep mariadb

2、安装MySQL

# 查看是否安装MySQL
sudo rpm -qa | grep mysql

# 选择要下载的MySQL版本,进入官网进行下载rpm包

2.1、MySQL官网查找自己需要下载的MySQL版本

最新版MySQL:https://dev.mysql.com/downloads/mysql/open in new window

旧版MySQL:https://downloads.mysql.com/archives/community/open in new window

# 查看版本
cat /etc/redhat-release

# 查看Linux系统的内核版本
uname -r

# 选择如下包
image
image

2.2、安装MySQL

MySQL提供了多种软件安装方式

1、rpm方式,将软件包下载到指定目录下,在该目录下执行“rpm -ivh 包名”命令。支持离线

2、deb方式,下载软件包,执行“dpkg -i 包名”命令。支持离线

3、yum方式,确定正常联网,执行“yum install 软件包名”命令等等。不支持离线

# 将下好的rpm包导入Linux,然后复制到对应的目录,这里我选择opt目录,一般情况下,自己下载的软件都放在这里
cd /opt

# 创建存储目录
mkdir mysql5

# 移动,所有5.0的MySQL所需文件
mv /home/marshio/Downloads/mysql-community-*-5* mysql5

# 依次安装,需按照顺序
sudo rpm -ivh mysql-community-common-5.7.38-1.el7.x86_64.rpm

sudo rpm -ivh mysql-community-libs-5.7.38-1.el7.x86_64.rpm

sudo rpm -ivh mysql-community-client-5.7.38-1.el7.x86_64.rpm

sudo rpm -ivh mysql-community-server-5.7.38-1.el7.x86_64.rpm

-i:表示安装,

-v:表示显示安装过程,

-h:表示显示进度

image
image

2.3、初始化MySQL

修改配置

# 创建data目录和log目录
mkdir {data,log}

# 修改配置文件
sudo vim /etc/my.cnf

# 源文件
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock

# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

# 修改之后
[mysqld]
datadir=/opt/mysql5/data
socket=/opt/mysql5/data/mysql.sock

# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

log-error=/opt/mysql5/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

# 初始化
mysqld --initialize

# 给对应的文件

# 启动服务
sudo systemctl start mysqld
# 或者
service mysqld start

# 如果启动失败,则需要查看日志
# 首先查看日志位置,找到 log-error 的文件位置,并查看,一般情况下MySQL的日志文件位于/var/log/mysqld.log,找到[ERROR]
cat /etc/my.cnf
cat /var/log/mysqld.log

# 如果提示类似不能写入,没有权限等问题,则需要赋予相应权限
chown mysql:mysql -R filename

开启端口

firewall-cmd

# 
sudo firewall-cmd --list-ports

sudo firewall-cmd --zone=public --permanent --add-port=3306/tcp

sudo firewall-cmd --reload

修改密码

# 查看默认密码,默认密码是在MySQL启动时自动给root用户创建的
cat /etc/my.cnf
cat /var/log/mysqld.log | grep 'password'
mysql -uroot -p
# 修改默认密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'Abc123...'

# 修改root访问IP路径为所有
UPDATE user SET host='%' WHERE user='root';

# 刷新访问权限,或者重启MySQL
FLUSH PRIVILEGES

1ryh8QL+A*kg

Windows