openEuler源码安装MySQL
·
一、软件自带启动脚本init
1.1.下载并初始化
[root@openEuler-2 ~]# wget https://downloads.mysql.com/archives/get/p/23/file/mysql-8.0.36-linux-glibc2.28-x86_64.tar.xz
[root@openEuler-2 ~]# ls
anaconda-ks.cfg mysql-8.0.36-linux-glibc2.12-x86_64.tar.xz
# 创建mysql用户和用户组
[root@openEuler-2 ~]# groupadd mysql
[root@openEuler-2 ~]# useradd -r -g mysql -s /bin/false mysql
# 解压mysql二进制包到/usr/local/下
[root@openEuler-2 ~]# tar xf mysql-8.0.36-linux-glibc2.12-x86_64.tar.xz -C /usr/local/
# 建软连接
[root@openEuler-2 ~]# ln -s /usr/local/mysql-8.0.36-linux-glibc2.12-x86_64/ /usr/local/mysql
# 初始化,注意:记住最后初始化的登录密码
[root@openEuler-2 ~]# /usr/local/mysql/bin/mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data
1.2.编写配置文件/etc/my.cnf
# 首先创建用于放mysql日志的目录
[root@openEuler-2 ~]# mkdir /var/log/mysql
# 设置目录权限
[root@openEuler-2 ~]# chown -R mysql /var/log/mysql
# 写配置文件
[root@openEuler-2 ~]# vim /etc/my.cnf
[mysqld]
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
log-error=/var/log/mysql/mysqld.log
pid-file=/usr/local/mysql/data/mysqld.pid
# 修改mysql数据目录和文件的权限
[root@openEuler-2 ~]# chown -R mysql.mysql /usr/local/mysql/*
[root@openEuler-2 ~]# chown -R mysql.mysql /usr/local/mysql
1.3.拷贝软件自带启动脚本,启动服务
# 拷贝服务脚本
[root@openEuler-2 ~]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
# 查看脚本执行权限
[root@openEuler-2 ~]# ll /etc/init.d/mysqld
-rwxr-xr-x 1 root root 10576 Jan 14 21:11 /etc/init.d/mysqld
# 添加系统服务
[root@openEuler-2 ~]# chkconfig --add mysqld
# 设置服务开机自启动
[root@openEuler-2 ~]# chkconfig mysqld on
# 查看
[root@openEuler-2 ~]# chkconfig --list mysqld
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
# 启动服务
[root@openEuler-2 ~]# systemctl start mysqld
[root@openEuler-2 ~]# systemctl status mysqld
# 安装mysql依赖
[root@openEuler-2 ~]# yum install -y ncurses-compat-libs
# 设置添加环境变量
[root@openEuler-2 ~]# vim /etc/profile.d/mysql.sh
export PATH=$PATH:/usr/local/mysql/bin
# 立即生效
[root@openEuler-2 ~]# source /etc/profile.d/mysql.sh
# 登录,输入前面初始化的密码
[root@openEuler-2 ~]# mysql -uroot -p
# 修改mysql密码
mysql> alter user 'root'@'localhost' identified with mysql_native_password by '123456';
二、手动配置启动脚本systemd
2.1.下载并初始化
[root@openEuler-2 ~]# wget https://downloads.mysql.com/archives/get/p/23/file/mysql-8.0.36-linux-glibc2.28-x86_64.tar.xz
[root@openEuler-2 ~]# ls
anaconda-ks.cfg mysql-8.0.36-linux-glibc2.12-x86_64.tar.xz
# 创建mysql用户和用户组
[root@openEuler-2 ~]# groupadd mysql
[root@openEuler-2 ~]# useradd -r -g mysql -s /bin/false mysql
# 解压mysql二进制包到/usr/local/下
[root@openEuler-2 ~]# tar xf mysql-8.0.36-linux-glibc2.12-x86_64.tar.xz -C /usr/local/
# 建软连接
[root@openEuler-2 ~]# ln -s /usr/local/mysql-8.0.36-linux-glibc2.12-x86_64/ /usr/local/mysql
# 初始化,注意:记住最后初始化的登录密码
[root@openEuler-2 ~]# /usr/local/mysql/bin/mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data
2.2.编写配置文件/etc/my.cnf
# 首先创建用于放mysql日志的目录
[root@openEuler-2 ~]# mkdir /var/log/mysql
# 设置目录权限
[root@openEuler-2 ~]# chown -R mysql /var/log/mysql
# 写配置文件
[root@openEuler-2 ~]# vim /etc/my.cnf
[mysqld]
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
log-error=/var/log/mysql/mysqld.log
pid-file=/usr/local/mysql/data/mysqld.pid
# 修改mysql数据目录和文件的权限
[root@openEuler-2 ~]# chown -R mysql.mysql /usr/local/mysql/*
[root@openEuler-2 ~]# chown -R mysql.mysql /usr/local/mysql
2.3.编写systemd启动脚本
# 写服务文件,添加以下内容
[root@openEuler-2 ~]# vim /usr/lib/systemd/system/mysqld.service
[Unit]
Description=Mysql server
After=network.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --daemonize $OPTIONS
ExecReload=/bin/kill -HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
KillMode=process
LimitNOFILE=65535
Restart=on-failure
RestartSec=10
RestartPreventExitStatus=1
PrivateTmp=false
# 安装mysql依赖
[root@openEuler-2 ~]# yum install -y ncurses-compat-libs
# 设置添加环境变量
[root@openEuler-2 ~]# vim /etc/profile.d/mysql.sh
export PATH=$PATH:/usr/local/mysql/bin
# 立即生效
[root@openEuler-2 ~]# source /etc/profile.d/mysql.sh
# 重新加载配置
[root@openEuler-2 ~]# systemctl daemon-reload
# 修改mysql密码
mysql> alter user 'root'@'localhost' identified with mysql_native_password by '123456';
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐


所有评论(0)