1.1MySQL部署
基于openeuler22-03源码安装MySQL 5.7.26
1、openeuler系统默认可能会安装MariaDB,因此查询是否已经以rpm方式安装,若有即卸载。
# rpm -qa mariadb(查看是否安装)
如果存在则需要卸载:
# dnf remove -y mariadb
2、安装mysql运行所需要依赖的软件
# dnf install -y gcc gcc-c++ make ncurses-devel autoconf lrzsz tar
ncurses 字符终端处理库,包括面板和菜单等功能
autoconf //兼容多系统
进行make编译
3、下载并上传软件
rz(找到mysql的软件包)
4.解压软件
# tar -zxf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
# mv mysql-5.7.26-linux-glibc2.12-x86_64/ /usr/local/mysql
5、mysql运行用户创建:
# useradd -s /sbin/nologin mysql
6.设置环境变量 //为了命令执行更方便。
# echo "export PATH=/usr/local/mysql/bin:$PATH" >> /etc/profile
# source /etc/profile
# echo "export PATH=/usr/local/mysql/bin:$PATH" >> /etc/rc.d/rc.local
# mysql -V //报错
mysql: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory
原因是因为MySQL5.7相对于该操作系统版本低了一点,将操作系统新的库连接到此即可:
# find / -name ' libncurses*'
/usr/lib64/libncurses.so.6
# ln -sf /usr/lib64/libncurses.so.6 /usr/lib64/libncurses.so.5
# ln -s /usr/lib64/libtinfo.so.6 /usr/lib64/libtinfo.so.5
# mysql -V
mysql Ver 14.14 Distrib 5.7.26, for linux-glibc2.12 (x86_64) using EditLine wrapper
7.创建数据路径并授权
# mkdir /usr/local/mysql/data
授权
# chown -R mysql.mysql /usr/local/mysql/*
8.初始化数据(创建系统数据)********
# mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data
9.主配置文件的准备
cat >/etc/my.cnf <<EOF
[mysqld]
user=mysql
basedir=/usr/local/mysql/
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
server_id=6
port=3306
sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
[mysql]
socket=/tmp/mysql.sock
EOF
10、启动数据库
cat >/etc/systemd/system/mysqld.service <<EOF
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE = 5000
EOF
# systemctl enable mysqld
# systemctl start mysqld
# netstat -anpt | grep mysqld //可查看mysql运行状态,端口号为tcp:3306
如果
# netstat -anpt | grep mysqld 不能启动,
解决:
最后验证:这个ip是自己设置的。
就可以了,MySQL就安装完成了。