CentOS版本:CentOS 7
三种安装方式:
一、通过 yum 安装,最简单,一键安装,全程无忧。
二、通过 rpm 包安装,需具备基础概念及常规操作。
三、通过 gz 包安装,需具备配置相关操作。
一、通过 yum 安装
安装 MySQL版本:MySQL Community Server 8.4.3 LTS
最简单的安装方式,但过程中涉及的密钥、rpm源url等地址如果过期,需要重新获取新的url
需要 root 权限,使用 root 用户进行命令操作。
1、获取官方 yum 源(url)
查看 CentOS 版本
cat /etc/redhat-release
打开 MySQL 官方 yum 仓库网站https://repo.mysql.com/,获取与当前 CentOS 版本匹配的源的url(CentOS 7对应el7):https://repo.mysql.com/mysql84-community-release-el7-1.noarch.rpm
2、安装 MySQL
导入密钥:当前最新密钥urlhttps://repo.mysql.com/RPM-GPG-KEY-mysql-2023,暂时搞不清楚这个密钥url是如何获取的。
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2023
【过往密钥urlhttps://repo.mysql.com/RPM-GPG-KEY-mysql-2022】
通过上面获取到的 yum 源(url)https://repo.mysql.com/mysql84-community-release-el7-1.noarch.rpm,安装 mysqlyum 仓库
rpm -Uvh https://repo.mysql.com/mysql84-community-release-el7-1.noarch.rpm
使用 yum 自动安装 MySQL
yum -y install mysql-community-server
查看 MySQL 安装目录
whereis mysql
3、启动 MySQL
【MySQL 安装完成后,会自动配置名称为 mysqld 的服务,可以被 systemctl 管理。】
启动 MySQL 服务
systemctl start mysqld
设置 MySQL 服务开机自动启动
systemctl enable mysqld
查看 MySQL 服务状态
systemctl status mysqld
查看 MySQL 服务进程
ps axj | grep mysqld
4、登录 MySQL
获取临时密码进行登录
获取 MySQL 日志文件的路径,查看配置文件/etc/my.cnf 中的 log-error 的内容 /var/log/mysqld.log 就是 MySQL 日志文件的路径
cat /etc/my.cnf
再查看 MySQL 日志文件 /var/log/mysqld.log,使用通道符按关键字直接检索,获取临时密码
grep "temporary password" /var/log/mysqld.log
登录 MySQL
mysql -u root -p
修改密码,MySQL默认的密码策略是要包含大写字母、小写字母、数字、特殊字符,长度大于8位
alter user 'root'@'localhost' identified by '复杂的密码';
退出 MySQL
exit;
重新登录 MySQL,使用修改后的密码
mysql -u root -p
退出 MySQL
exit;
5、开放端口 3306
为什么是 3306 ?
查看 MySQL 服务监听哪些端口
netstat -nap | grep mysqld
检查端口是否开放
firewall-cmd --zone=public --query-port=3306/tcp
开放端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
重新加载
firewall-cmd --reload
再检查端口是否开放
firewall-cmd --zone=public --query-port=3306/tcp
6、设置远程登录
MySQL默认只能本地连接,不允许远程终端连接
【前置测试,目的是为了搞清楚在设置远程登录之前,在远程终端上进行连接的情况】
在远程终端(192.168.88.1)上通过【终端】或【cmd】使用命令行连接
mysql -h 192.168.88.130 -u root -p
失败,提示不允许连接
在远程终端(192.168.88.1)上通过【第三方图形化工具】连接
失败,提示不允许连接
登录 MySQL,新建 root 用户,允许在远程终端(192.168.88.1)上远程登录
mysql -u root -p
create user 'root'@'192.168.88.1' identified by '复杂的密码';
如果是允许在所有远程终端上远程登录,则使用这个命令:
create user 'root'@'%' identified by '复杂的密码';
修改密码
alter user 'root'@'192.168.88.1' identified by '复杂的密码';
授予权限(最大权限)
grant all privileges on *.* to 'root'@'192.168.88.1';
刷新权限
flush privileges;
查看用户情况
SELECT host, user FROM mysql.user WHERE user = 'root';
7、测试远程登录
在远程终端(192.168.88.1)上通过【终端】或【cmd】使用命令行连接
mysql -h 192.168.88.130 -u root -p
连接登录进去,可以相应的数据库操作
SELECT host, user FROM mysql.user WHERE user = 'root';
在远程终端(192.168.88.1)上通过【第三方图形化工具】连接
连接登录进去,可以相应的数据库操作
SELECT host, user FROM mysql.user WHERE user = 'root';
二、通过 rpm 包安装
安装 MySQL版本:MySQL Community Server 8.4.3 LTS
需要 root 权限,使用 root 用户进行命令操作。
1、准备安装环境
查询是否存在 MariaDB 相关安装包,MariaDB是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。
rpm -qa | grep mariadb
删除已经安装的mariadb,通过上面查询得到的文件名为:mariadb-libs-5.5.60-1.el7_5.x86_64
rpm -e --nodeps 文件名
再查询是否存在 MariaDB 相关安装包
rpm -qa | grep mariadb
查看正在运行的 MySQL 服务
ps axj | grep mysql
存在正在运行的 MySQL 服务,停止 MySQL 服务
systemctl stop mysqld
查看 MySQL 服务状态
systemctl status mysqld
查询是否存在 MySQL 相关安装包
rpm -qa | grep mysql
存在 MySQL 相关安装包,全部卸载
rpm -qa | grep mysql | xargs yum -y remove
再检查是否存在 MySQL 相关安装包
rpm -qa | grep mysql
查询是否存在 MySQL 相关安装文件
find / -name mysql
存在 MySQL 相关安装文件,全部删除
rm -rf /etc/selinux/targeted/active/modules/100/mysql /usr/lib64/mysql /export/server/mysql
再查询是否存在 MySQL 相关安装文件
find / -name mysql
删除 MySQL 相关配置文件
rm -rf /etc/my.cnf /etc/init.d/mysql /etc/init.d/mysqld
删除 mysql 用户和用户组
userdel mysql
groupdel mysql
2、下载 rpm 包
在远程终端计算机上,打开MySQL官网:https://www.mysql.com/
直接下载网址:https://dev.mysql.com/downloads/mysql/
其他版本
3、上传 rpm 包到 CentOS
使用FinalShell远程登录工具,并且使用 root 用户连接登录(注意这里说的root用户连接登录是指这样的)
4、解压 rpm 包
创建目录/export/server/mysql
mkdir -p /export/server/mysql
解压到目录/export/server/mysql
.tar.gz 格式的为打包压缩,使用 tar -zxvf,解压后是一个与文件名同名的目录。
.tar 格式的为打包不压缩,使用 tar -xvf,解压后是相关的文件,不是目录。
所以这里需要在解压前,创建目录/export/server/mysql,解压到这个目录。
tar -xvf mysql-8.4.3-1.el7.x86_64.rpm-bundle.tar -C /export/server/mysql
查看解压后情况
ls -l /export/server/mysql
5、安装依赖
安装openssl 和 openssl-devel,OpenSSL库是用于加密和解密数据的库,MySQL在安全通信时需要使用OpenSSL库。
yum -y install openssl openssl-devel
安装 libaio,libaio库是Linux异步I/O操作的库,MySQL在进行I/O操作时需要使用libaio库。
yum -y install libaio
安装ncurses,ncurses库是用于控制终端输出的库,MySQL的终端工具需要使用ncurses库。
yum -y install libncurses*
6、安装 MySQL
进入目录 /export/server/mysql,查看目录内容
cd /export/server/mysql
ls -l
依次执行以下命令,依次安装 /export/server/mysql 目录下的各个.rpm文件
rpm -ivh mysql-community-common-8.4.3-1.el7.x86_64.rpm;
rpm -ivh mysql-community-client-plugins-8.4.3-1.el7.x86_64.rpm;
rpm -ivh mysql-community-libs-8.4.3-1.el7.x86_64.rpm;
rpm -ivh mysql-community-client-8.4.3-1.el7.x86_64.rpm;
rpm -ivh mysql-community-icu-data-files-8.4.3-1.el7.x86_64.rpm;
rpm -ivh mysql-community-server-8.4.3-1.el7.x86_64.rpm;
rpm -ivh mysql-community-libs-compat-8.4.3-1.el7.x86_64.rpm;
rpm -ivh mysql-community-embedded-compat-8.4.3-1.el7.x86_64.rpm;
rpm -ivh mysql-community-devel-8.4.3-1.el7.x86_64.rpm;
7、配置 MySQL
修改配置文件/etc/my.cnf,在 [mysqld] 中增加配置内容
vim /etc/my.cnf
增加的配置内容以下
# 设置 MySQL 服务运行的端口号
port = 3306
# 指定 MySQL 数据库的默认字符集
character-set-server=utf8mb4
# 允许外部访问
bind-address=0.0.0.0
# 设置client连接mysql时的字符集,防止乱码
init_connect='SET NAMES utf8mb4'
# 设置 MySQL 允许访问的最大连接数
max_connections = 1000
# 指定MySQL服务器存储数据文件的目录
datadir=/var/lib/mysql
# 是否对sql语句大小写敏感,1表示不敏感
lower_case_table_names = 1
# 事务隔离级别,默认为可重复读,mysql默认可重复读级别(此级别下可能参数很多间隙锁,影响性能)
transaction_isolation = READ-COMMITTED
# TIMESTAMP如果没有显示声明NOT NULL,允许NULL值
explicit_defaults_for_timestamp = true
目录授权
chown -R mysql:mysql /var/lib/mysql/
chown -R 表示对目前目录下的所有文件与子目录进行相同的权限变更(即以递回的方式逐个变更)
chown mysql.mysql 和 mysql:mysql 这两种写法是一样的,都是将后面指定的目录所属用户和组改成 mysql 用户和 mysql 组
8、启动 MySQL
【MySQL 安装完成后,会自动配置名称为 mysqld 的服务,可以被 systemctl 管理。】
启动 MySQL 服务
systemctl start mysqld.service
设置 MySQL 服务开机自动启动
systemctl enable mysqld.service
查看 MySQL 服务
systemctl status mysqld.service
查看 MySQL 服务进程
ps axj | grep mysqld
9、登录 MySQL
方式1:
获取临时密码进行登录
获取 MySQL 日志文件的路径,查看配置文件/etc/my.cnf 中的 log-error 的内容 /var/log/mysqld.log 就是 MySQL 日志文件的路径
cat /etc/my.cnf
再查看 MySQL 日志文件 /var/log/mysqld.log,使用通道符按关键字直接检索,获取临时密码
grep "temporary password" /var/log/mysqld.log
登录 MySQL
mysql -u root -p
查看 MySQL 版本
SELECT VERSION();
不修改密码,不允许执行SQL命令。
修改密码,MySQL默认的密码策略是要包含大写字母、小写字母、数字、特殊字符,长度大于8位
alter user 'root'@'localhost' identified by '复杂的密码';
退出 MySQL
exit;
重新登录 MySQL,使用修改后的密码
mysql -u root -p
查看 MySQL 版本
SELECT VERSION();
修改密码后,就可以执行SQL命令。
退出 MySQL
exit;
方式2:
跳过密码验证进行登录。不推荐。除非通过方式1获取不到临时密码,或者使用过程中忘记密码了。
修改/etc/my.cnf 配置文件,在 [mysqld] 后面任意一行添加 skip-grant-tables
vim /etc/my.cnf
重启 MySQL
systemctl restart mysqld
登录 MySQL(无 -p 选项,无需密码登录)
mysql -u root
查看 MySQL 版本
SELECT VERSION();
刷新权限 ,需要刷新权限之后才能修改密码
flush privileges;
修改密码,MySQL默认的密码策略是要包含大写字母、小写字母、数字、特殊字符,长度大于8位
alter user 'root'@'localhost' identified by '复杂的密码';
退出 MySQL
exit;
再修改/etc/my.cnf 配置文件,将 skip-grant-tables 这行注释或删除掉
vim /etc/my.cnf
重启 MySQL
systemctl restart mysqld
重新登录 MySQL,使用修改后的密码
mysql -u root -p
退出 MySQL
exit;
10、开放端口3306
为什么是 3306 ?
查看 MySQL 服务监听哪些端口
netstat -nap | grep mysqld
检查端口是否开放
firewall-cmd --zone=public --query-port=3306/tcp
开放端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
重新加载
firewall-cmd --reload
再检查端口是否开放
firewall-cmd --zone=public --query-port=3306/tcp
11、设置远程登录
MySQL默认只能本地连接,不允许远程终端连接
【前置测试,目的是为了搞清楚在设置远程登录之前,在远程终端上进行连接的情况】
在远程终端(192.168.88.1)上通过【终端】或【cmd】使用命令行连接
mysql -h 192.168.88.130 -u root -p
失败,提示不允许连接
在远程终端(192.168.88.1)上通过【第三方图形化工具】连接
失败,提示不允许连接
登录 MySQL,新建 root 用户,允许在远程终端(192.168.88.1)上远程登录
mysql -u root -p
create user 'root'@'192.168.88.1' identified by '复杂的密码';
如果是允许在所有远程终端上远程登录,则使用这个命令:
create user 'root'@'%' identified by '复杂的密码';
% 代表所有终端
修改密码
alter user 'root'@'192.168.88.1' identified by '复杂的密码';
授予权限(最大权限)
grant all privileges on *.* to 'root'@'192.168.88.1';
刷新权限
flush privileges;
查看用户情况
SELECT host, user FROM mysql.user WHERE user = 'root';
退出 MySQL(Ctrl + D 快捷键)
12、测试远程登录
在远程终端(192.168.88.1)上通过【终端】或【cmd】使用命令行连接
mysql -h 192.168.88.130 -u root -p
连接登录进去,可以相应的数据库操作
SELECT host, user FROM mysql.user WHERE user = 'root';
在远程终端(192.168.88.1)上通过【第三方图形化工具】连接
连接登录进去,可以相应的数据库操作
SELECT host, user FROM mysql.user WHERE user = 'root';
13、删除安装文件
删除安装包文件
rm -rf /root/mysql-8.4.3-1.el7.x86_64.rpm-bundle.tar
删除安装包解压的安装目录
rm -rf /export/server/mysql
三、通过 gz 包安装
安装 MySQL版本:MySQL Community Server 5.7.44
需要 root 权限,使用 root 用户进行命令操作。
1、准备安装环境
查询是否存在 MariaDB 相关安装包,MariaDB是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。
rpm -qa | grep mariadb
删除已经安装的mariadb,通过上面查询得到的文件名为:mariadb-libs-5.5.60-1.el7_5.x86_64
rpm -e --nodeps 文件名
再查询是否存在 MariaDB 相关安装包
rpm -qa | grep mariadb
查看正在运行的 MySQL 服务
ps axj | grep mysql
存在正在运行的 MySQL 服务,停止 MySQL 服务
systemctl stop mysqld
查看 MySQL 服务状态
systemctl status mysqld
查询是否存在 MySQL 相关安装包
rpm -qa | grep mysql
存在 MySQL 相关安装包,全部卸载
rpm -qa | grep mysql | xargs yum -y remove
再检查是否存在 MySQL 相关安装包
rpm -qa | grep mysql
查询是否存在 MySQL 相关安装文件
find / -name mysql
存在 MySQL 相关安装文件,全部删除
rm -rf /etc/selinux/targeted/active/modules/100/mysql /usr/lib64/mysql /export/server/mysql
再查询是否存在 MySQL 相关安装文件
find / -name mysql
删除 MySQL 相关配置文件
rm -rf /etc/my.cnf /etc/init.d/mysql /etc/init.d/mysqld
删除 mysql 用户和用户组
userdel mysql
groupdel mysql
2、下载 gz 包
打开MySQL官网:https://www.mysql.com/
获取与当前 CentOS 版本匹配的 gz 编译源码包链接地址:
https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.44-el7-x86_64.tar.gz
下载 gz 编译源码包到 /root 目录下
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.44-el7-x86_64.tar.gz
查看/root 目录内容
ls /root
3、解压 gz 包
创建目录/export/server
mkdir -p /export/server
解压到目录/export/server
.tar.gz 格式的为打包压缩,使用 tar -zxvf,解压后是一个与文件名同名的目录。
.tar 格式的为打包不压缩,使用 tar -xvf,解压后是相关的文件,不是目录。
tar -zxvf mysql-5.7.44-el7-x86_64.tar.gz -C /export/server
查看解压后情况,在 /export/server 下 解压出一个与gz包同名的目录mysql-5.7.44-el7-x86_64
ls -l /export/server
为方便后续操作,将解压出来的目录mysql-5.7.44-el7-x86_64 重命名为 mysql,查看目录内容
mv /export/server/mysql-5.7.44-el7-x86_64 /export/server/mysql
ls -l /export/server
4、安装依赖
安装开发工具包 gcc 和 gcc-c++
yum -y install gcc gcc-c++
安装依赖包
安装openssl 和 openssl-devel,OpenSSL库是用于加密和解密数据的库,MySQL在安全通信时需要使用OpenSSL库。
yum -y install openssl openssl-devel
安装 libaio,libaio库是Linux异步I/O操作的库,MySQL在进行I/O操作时需要使用libaio库。
yum -y install libaio
安装ncurses,ncurses库是用于控制终端输出的库,MySQL的终端工具需要使用ncurses库。
yum -y install libncurses*
5、安装 MySQL
进入目录/export/server/mysql,查看目录内容
cd /export/server/mysql
ls -l
创建 mysql 用户组、mysql 用户
groupadd mysql
useradd -r -g mysql mysql
useradd -r参数表示mysql用户是系统用户,不可用于登录系统。
useradd -g参数表示把mysql用户添加到mysql用户组中。
创建目录
创建 mysql 存储数据 data 目录
mkdir /export/server/mysql/data
创建 mysql 存储 mysq.sock 文件目录
mkdir /var/lib/mysql
目录授权
将 /export/server/mysql 和/var/lib/mysql目录所属用户和组改成 mysql 用户和 mysql 组
chown -R mysql:mysql /export/server/mysql
chown -R mysql:mysql /var/lib/mysql
chown -R 表示对目前目录下的所有文件与子目录进行相同的权限变更(即以递回的方式逐个变更)
chown mysql.mysql 和 mysql:mysql 这两种写法是一样的,都是将后面指定的目录所属用户和组改成 mysql 用户和 mysql 组
创建 mysql 启动配置文件 my.cnf,配置内容
vim /etc/my.cnf
配置内容以下
[mysql]
socket=/var/lib/mysql/mysql.sock
default-character-set=utf8
[mysqld]
socket=/var/lib/mysql/mysql.sock
port=3306
basedir=/export/server/mysql
datadir=/export/server/mysql/data
max_connections=200
character-set-server=utf8
default-storage-engine=INNODB
lower_case_table_names=1
max_allowed_packet=16M
explicit_defaults_for_timestamp=true
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
[mysql.server]
user=mysql
basedir=/export/server/mysql
初始化 MySQL,因为目前MySQL目录(/export/server/mysql)设置的所属用户是mysql,所以--user=mysql,如果是 root 用户,--user=root
/export/server/mysql/bin/mysqld --initialize --user=mysql --basedir=/export/server/mysql --datadir=/export/server/mysql/data
设置开机启动
配置启动脚本,修改 basedir 和 datadir 的路径
vim /export/server/mysql/support-files/mysql.server
修改 $bindir/mysqld_safe 关键处,在其后面添加--user=mysql,MySQL目录的权限是什么用户就加什么用户,因为目前MySQL目录(/export/server/mysql)设置的所属用户是mysql,所以--user=mysql,如果是 root 用户,--user=root
将 /export/server/mysql/support-files/mysql.server 复制到 /etc/rc.d/init.d/mysqld
cp /export/server/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld
赋予执行权限
chmod +x /etc/rc.d/init.d/mysqld
添加系统服务,将 mysqld 服务加入到系统服务
chkconfig --add mysqld
查看 mysql 服务,检查添加系统服务是否生效
chkconfig --list mysqld
因为 mysqld 是我们手动添加的,不是本地服务,所以想要设置开机启动不能用 systemctl enable mysqld ,systemctl 命令只能操作正常安装在系统的本地服务,所以要通过 chkconfig 命令来设置开机启动。
设置开机启动、关机开机启动
chkconfig mysqld on
chkconfig mysqld off
检查环境变量
echo $PATH
配置环境变量,添加 mysql 环境变量
vim /etc/profile
刷新环境变量
source /etc/profile
再检查环境变量
echo $PATH
6、启动 MySQL
查看 MySQL 服务
systemctl status mysqld
启动 MySQL 服务
systemctl start mysqld
设置 MySQL 服务开机自动启动(因为 mysqld 是我们手动添加的,不是本地服务,不用使用systemctl enable mysqld 设置开机启动)
systemctl enable mysqld
查看 MySQL 服务
systemctl status mysqld
因为 mysqld 是我们手动添加的,不是本地服务,所以想要设置开机启动不能用 systemctl enable mysqld ,systemctl 命令只能操作正常安装在系统的本地服务,所以要通过 chkconfig 命令来设置开机启动。
查看 MySQL 服务进程
ps -ef | grep mysqld
7、登录 MySQL
获取临时密码进行登录,在前面初始化 MySQL 的时候,有输出临时密码。
登录 MySQL
mysql -u root -p
查看 MySQL 版本
SELECT VERSION();
不修改密码,不允许执行SQL命令。
修改密码,MySQL默认的密码策略是要包含大写字母、小写字母、数字、特殊字符,长度大于8位
alter user 'root'@'localhost' identified by '复杂的密码';
退出 MySQL
exit;
重新登录 MySQL,使用修改后的密码
mysql -u root -p
查看 MySQL 版本
SELECT VERSION();
修改密码后,就可以执行SQL命令。
退出 MySQL
exit;
8、开放端口3306
为什么是 3306 ?
查看 MySQL 服务监听哪些端口
netstat -nap | grep mysqld
检查端口是否开放
firewall-cmd --zone=public --query-port=3306/tcp
开放端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
重新加载
firewall-cmd --reload
再检查端口是否开放
firewall-cmd --zone=public --query-port=3306/tcp
9、设置远程登录
MySQL默认只能本地连接,不允许远程终端连接
【前置测试,目的是为了搞清楚在设置远程登录之前,在远程终端上进行连接的情况】
在远程终端(192.168.88.1)上通过【终端】或【cmd】使用命令行连接
mysql -h 192.168.88.130 -u root -p
失败,提示不允许连接
在远程终端(192.168.88.1)上通过【第三方图形化工具】连接
失败,提示不允许连接
登录 MySQL,新建 root 用户,允许在远程终端(192.168.88.1)上远程登录
mysql -u root -p
create user 'root'@'192.168.88.1' identified by '复杂的密码';
如果是允许在所有远程终端上远程登录,则使用这个命令:
create user 'root'@'%' identified by '复杂的密码';
% 代表所有终端
修改密码
alter user 'root'@'192.168.88.1' identified by '复杂的密码';
授予权限(最大权限)
grant all privileges on *.* to 'root'@'192.168.88.1';
刷新权限
flush privileges;
查看用户情况
SELECT host, user FROM mysql.user WHERE user = 'root';
退出 MySQL(Ctrl + D 快捷键)
10、测试远程登录
在远程终端(192.168.88.1)上通过【终端】或【cmd】使用命令行连接
mysql -h 192.168.88.130 -u root -p
连接登录进去,可以相应的数据库操作
SELECT host, user FROM mysql.user WHERE user = 'root';
在远程终端(192.168.88.1)上通过【第三方图形化工具】连接
连接登录进去,可以相应的数据库操作
SELECT host, user FROM mysql.user WHERE user = 'root';
11、删除安装文件
rm -rf /root/mysql-5.7.44-el7-x86_64.tar.gz
扩展
查看 mysql 命令所在的目录
which mysql
查看 mysql 所在的目录
whereis mysql
查看数据目录
方式1:
mysql -u root -p -e "show variables like 'datadir'"
方式2:查看配置文件
vim /etc/my.cnf