安装准备
1. 检查是否已经安装过 mysql,执行命令
rpm -qa | grep mysql
若安装了,执行删除
rpm -e --nodeps mysql-libs-xxx.x86_64
2. 查询所有 mysql 对应的文件夹
whereis mysql
find / -name mysql
#删除相关目录或文件
rm -rf /usr/lib64/mysql/ /usr/share/mysql/ /usr/local/mysql/
3. 检查 mysql 用户组和用户是否存在,如果没有,则创建
cat /etc/group | grep mysql
cat /etc/passwd |grep mysql
#创建用户组和用户
groupadd mysql
useradd -r -g mysql mysql
4. 从官网下载用于 linux 的 mysql 安装包
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
也可以直接到 mysql 官网选择其他版本进行下载 https://dev.mysql.com/downloa…
安装 mysql
1. 在执行 wget 命令的目录下或你的上传目录下找到 mysql 安装包:mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz,执行解压命令:
tar -zxvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
解压完成后,可以看到当前目录下多了一个解压文件,移动该文件到 /usr/local/mysql 执行移动命令:
mv mysql-5.7.24-linux-glibc2.12-x86_64 /usr/local/mysql
2. 在 /usr/local/mysql 目录下创建 data 目录
mkdir /usr/local/mysql/data
3. 更改 mysql 目录下所有的目录及文件夹所属的用户组和用户,以及权限
chown -R mysql:mysql /usr/local/mysql
chmod -R 755 /usr/local/mysql
4. 编译安装并初始化 mysql, 务必记住初始化输出日志末尾的密码(数据库管理员临时密码)
cd /usr/local/mysql/bin
./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql
记录日志最末尾位置 root@localhost: 后的字符串,此字符串为 mysql 管理员临时登录密码。
5. 编辑配置文件 my.cnf,添加配置如下
vi /etc/my.cnf
#内容
[mysqld]
datadir=/usr/local/mysql/data
port=3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
symbolic-links=0
max_connections=400
innodb_file_per_table=1
lower_case_table_names=1
6. 启动 mysql 服务器
/usr/local/mysql/support-files/mysql.server start
如果出现如下提示信息
查看是否存在 mysql 和 mysqld 的服务,如果存在,则结束进程,再重新执行启动命令
# 查询服务
ps -ef|grep mysql
ps -ef|grep mysqld
#结束进程
kill -9 PID
#启动服务
/usr/local/mysql/support-files/mysql.server star
显示结果 Starting MySQL.[OK],说明数据库安装成功
7. 添加软连接,并重启 mysql 服务
[root@2 bin]# ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
[root@2 bin]# ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
[root@2 bin]# service mysql restart
8. 登录 mysql,修改密码(密码为步骤 4 生成的临时密码)
mysql -u root -p
#修改密码
set password for root@localhost = password('xxx');
9. 开放远程连接
use mysql;
update user set user.Host='%' where user.User='root';
flush privileges;