引言:华为鲲鹏服务器在安装数据库是尽量安装官网给出的安装文档逐步进行安装,如果在百度上找相关的安装博客可能会出现一些坑(本人已踩过)。
文章源自:创建数据目录_鲲鹏BoostKit数据库使能套件_安装指南_MySQL 5.7.27 安装指南_配置安装环境_华为云
目录
查看服务器版本
[root@dc6-80-452 etc]# uname -a
Linux dc6-80-452 4.19.90-17.ky10.aarch64 #1 SMP Sun Jun 28 14:27:40 CST 2020 aarch64 aarch64 aarch64 GNU/Linux
配置安装环境
关闭防火墙
说明:
测试环境下通常会关闭防火墙以避免部分网络因素影响,视实际需求做配置。
1.停止防火墙。
systemctl stop firewalld.service
2.关闭防火墙。
systemctl disable firewalld.service
说明:
执行disable命令关闭防火墙的同时,也取消了开机自启动。
3.查看防火墙。
systemctl status firewalld.service
修改SELINUX
1.修改配置文件。
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
创建组和用户
说明:
服务器环境下,为了系统安全,通常会为进程分配单独的用户,以实现权限隔离。创建的组和用户都是操作系统层面的,不是数据库层面的。1中会用到。
1.创建mysql用户(组)。
groupadd mysql
useradd -g mysql mysql
2.设置mysql用户密码。
passwd mysql
重复输入密码(根据实际需求设置密码)。
创建数据目录
1.创建数据目录“/data”和进程所需的相关目录。
mkdir -p /data/mysql
cd /data/mysql
mkdir data tmp run log relaylog
2.修改数据目录“/data”的用户组和用户权限为mysql:mysql。
chown -R mysql:mysql /data
ll /
安装
说明:
华为云鲲鹏服务器官方给出了两种安装方式,一种是进项站RPM安装,一种是编译安装,这里只说明RPM安装,因为RPM安装方式简单快捷。
说明:
鲲鹏镜像站中提供的二进制包是根据《MySQL 5.7.27 移植指南》打包而成,不含任何漏洞和BUG修复。
此安装方式需要连接外网。如果没有外网,则下载RPM包,上传到服务器任意路径,并在该路径下执行命令rpm -ivh mysql-5.7.27-1.el7.aarch64.rpm安装即可。使用开源软件时需遵守开源软件的许可协议。
RPM下载链接为:
安装RPM包
1.清除缓存。
yum clean all
2.将yum源中的软件包信息缓存到本地。
yum makecache
3.安装数据库rpm包。
yum -y install mysql-5.7.27-1.el7.aarch64 --enablerepo=kunpeng
4.查看安装后的rpm包。
rpm -qa | grep mysql
运行
1.修改配置文件。
a.编辑my.cnf配置文件,其中文件路径(包括软件安装路径basedir、数据路径datadir等)根据实际情况修改。
rm -f /etc/my.cnf
echo -e "[mysqld_safe]\nlog-error=/data/mysql/log/mysql.log\npid-file=/data/mysql/run/mysqld.pid\n[mysqldump]\nquick\n[mysql]\nno-auto-rehash\n[client]\ndefault-character-set=utf8\n[mysqld]\nbasedir=/usr/local/mysql\nsocket=/data/mysql/run/mysql.sock\ntmpdir=/data/mysql/tmp\ndatadir=/data/mysql/data\ndefault_authentication_plugin=mysql_native_password\nport=3306\nuser=mysql\n" > /etc/my.cnf
说明:
其中文件路径(包括软件安装路径basedir、数据路径datadir等)根据实际情况修改。user=mysql是指操作系统层的用户,即创建组和用户中创建的用户。
b.确保my.cnf配置文件修改正确。
cat /etc/my.cnf
c.修改/etc/my.cnf文件的组和用户为mysql:mysql。
chown mysql:mysql /etc/my.cnf
2.配置环境变量
a.安装完成后,将MySQL二进制文件路径到PATH。
echo export PATH=$PATH:/usr/local/mysql/bin >> /etc/profile
说明:
其中PATH中的“/usr/local/mysql/bin”路径,为MySQL软件安装目录下的bin文件的绝对路径,请根据实际情况修改。
b.使环境变量配置生效。
source /etc/profile
3.切换到mysql用户。
su - mysql
whoami
4.初始化数据库
/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --initialize
说明:
上图回显信息中最后一行中有初始密码,请注意保存,6时会用到。
如果采用镜像站RPM安装方式安装,则需要额外做以下操作步骤避免初始化数据库失败(如果没有失败,则忽略这个步骤即可,亲测有效):
- 下载压缩包rpm-bug.zip并上传到服务器“/home”目录下。
- 解压压缩包。
cd /home/ unzip rpm-bug.zip
3.进入解压后的文件目录并将其中的文件放入到对应库文件目录(如果有是否重写文件等提示,则输入y然后回车)。
cd rpm-bug cp libatomic.so.1 /usr/lib64/ cp libstdc++.so.6.0.24 /lib64/ rm /lib64/libstdc++.so.6 ln -s /lib64/libstdc++.so.6.0.24 /lib64/libstdc++.so.6 cp libaio.so.1.0.1 /usr/lib64/libaio.so.1
5.启动数据库。
a.启动MySQL,执行下面命令后回车。
/usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf &
说明:
- mysqld_safe脚本会在启动MySQL服务器后继续监控其运行情况,并在其死机时重新启动它。
- 如果第一次启动数据库服务,以root用户启动数据库,则启动时会提示缺少mysql.log文件而导致失败。使用mysql用户启动之后,会在“/data/mysql/log”目录下生成mysql.log文件,再次使用root用户启动则不会报错。
b.查看数据库进程。
ps -ef | grep mysql
6.登录数据库
说明:
登录时输入的密码为4时设置的初始密码,请留意包括特殊字符。
/usr/local/mysql/bin/mysql -uroot -p -S /data/mysql/run/mysql.sock
7.配置数据库帐号密码。
说明:
文档中的用户和密码只是参考,根据客户实际情况进行配置。
a.修改本地root用户登录密码。
alter user 'root'@'localhost' identified by "123456";
b.创建全域root用户(允许root从其他服务器访问)。
create user 'root'@'%' identified by '123456';
c.进行授权。
grant all privileges on *.* to 'root'@'%';
flush privileges;
8.退出数据库。
执行\q或者exit退出数据库。
exit
9.用修改后的密码重新登录数据库。
/usr/local/mysql/bin/mysql -uroot -p -S /data/mysql/run/mysql.sock
退出数据库
exit
10.关闭数据库(可选)。
/usr/local/mysql/bin/mysqladmin -uroot -p123456 shutdown -S /data/mysql/run/mysql.sock
查看数据库进程。
ps -ef | grep mysql
镜像站RPM卸载
1.查看数据库进程。
ps -ef | grep mysql
2.关闭数据库进程。
/usr/local/mysql/bin/mysqladmin -uroot -p123456 shutdown -S /data/mysql/run/mysql.sock
或者
kill -9 进程ID
3.退出mysql用户。
exit
whoami
4.卸载数据库RPM包。
rpm -qa | grep mysql
rpm -e mysql-5.7.27-1.el7.aarch64
rpm -qa | grep mysql
5.删除对应的安装目录和数据目录。
ls /usr/local/mysql
rm -rf /usr/local/mysql
ls /data/mysql
rm -rf /data/mysql