OpenEuler系统安装与MySQL数据安装

使用工具及镜像:

虚拟机:VMware16

openeuler镜像:openEuler-22.03-LTS-x86_64

mysql版本:mysql-5.7.40-1.el7.x86_64.rpm-bundle

一、系统安装(多图)

  1. 选择合适的Linux版本

  1. 根据需要设置处理和内存

  1. 网络连接设置

如果设置与主机同一个网段就设置桥接,其他模式也可以满足使用

  1. 选择镜像

下载OpenEuler镜像,这里测试用的是openEuler-22.03-LTS-x86_64,下载地址:https://repo.openeuler.org/openEuler-22.03-LTS/ISO/x86_64/openEuler-22.03-LTS-x86_64-dvd.iso

  1. 进入安装步骤

选择第一个Install openEuler 22.0.-LTS进入安装界面

  1. 安装信息介绍

① 可设置分区,我选择的是自动分区(点击进去后完成即可),也可以根据自己需要手动分区;

② 软件选择,根据需要选择预按照文件,一般为了服务器纯净选择最小安装;

③ 网络和主机名可以通过命令进行设置,这里暂不设置,如果准备好了点击启用即可;

④ 设置ROOT密码,对密码强度有要求,需包含三种符合(注意设置完记录一下);

⑤ 根据需要创建其他用户和密码;

⑥ 开始安装

  1. 配置系统静态IP

# cd /etc/sysconfig/network-scripts/
# vi ifcfg-ens33

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static    #dchp修改为static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=61edc1b6-af48-4d50-9886-c49d9af5bd7f
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.1.111    #设置为自己的IP
PREFIX=24
GATEWAY=192.168.1.1    #设置为自己的网关
NETMASSK=255.255.255.0    #子网掩码
DNS1=192.168.1.1    #DNS1
  1. 重启网络

# systemctl restart NetworkManager
  1. 安装常用的命令

# yum -y install tar
# yum -y install vim

二、下载及安装MySQL数据库(采用tar包安装)

  1. 下载MySQL数据库

https://downloads.mysql.com/archives/community/

  1. 将下载好的RPM Bundle包上传至服务器

  1. 执行命令查看服务器是否有mysql项

# yum repolist all | grep mysql
  1. 开始解压上传的安装包

# tar -xvf mysql-5.7.40-1.el7.x86_64.rpm-bundle.tar -C /mysql/mysql

解压结果如下:

  1. 使用rpm包分别安装common , libs, client, server服务,如下:

注意安装顺序

# cd /mysql/mysql
[root@localhost mysql]# rpm -ivh mysql-community-common-5.7.40-1.el7.x86_64.rpm --nodeps --force
警告:mysql-community-common-5.7.40-1.el7.x86_64.rpm: 头V4 RSA/SHA256 Signature, 密钥 ID 3a79bd29: NOKEY
Verifying...                          ################################# [100%]
准备中...                          ################################# [100%]
正在升级/安装...
   1:mysql-community-common-5.7.40-1.e################################# [100%]
[root@localhost mysql]# rpm -ivh mysql-community-libs-5.7.40-1.el7.x86_64.rpm --nodeps --force
警告:mysql-community-libs-5.7.40-1.el7.x86_64.rpm: 头V4 RSA/SHA256 Signature, 密钥 ID 3a79bd29: NOKEY
Verifying...                          ################################# [100%]
准备中...                          ################################# [100%]
正在升级/安装...
   1:mysql-community-libs-5.7.40-1.el7################################# [100%]
[root@localhost mysql]# rpm -ivh mysql-community-client-5.7.40-1.el7.x86_64.rpm --nodeps --force
警告:mysql-community-client-5.7.40-1.el7.x86_64.rpm: 头V4 RSA/SHA256 Signature, 密钥 ID 3a79bd29: NOKEY
Verifying...                          ################################# [100%]
准备中...                          ################################# [100%]
正在升级/安装...
   1:mysql-community-client-5.7.40-1.e################################# [100%]
[root@localhost mysql]# rpm -ivh mysql-community-server-5.7.40-1.el7.x86_64.rpm --nodeps --force
警告:mysql-community-server-5.7.40-1.el7.x86_64.rpm: 头V4 RSA/SHA256 Signature, 密钥 ID 3a79bd29: NOKEY
Verifying...                          ################################# [100%]
准备中...                          ################################# [100%]
正在升级/安装...
   1:mysql-community-server-5.7.40-1.e################################# [100%]
/usr/lib/tmpfiles.d/mysql.conf:23: Line references path below legacy directory /var/run/, updating /var/run/mysqld → /run/mysqld; please update the tmpfiles.d/ drop-in file accordingly.

再执行 rpm -qa | grep mysql 命令查看安装情况:

  1. 初始化数据库

# mysqld --initialize --console;
获取初始化的密码
# cat /var/log/mysqld.log | grep password;

① 查看mysql服务是否真的启动了,可以执行 systemctl status mysqld, 也可以ps命令查询mysql进程

一般第一次是没有启动成功

② 启动查看看错误

# systemctl start mysqld

这里可以三种方式排查错误信息

  • systemctl status mysqld查看错误信息

  • journalctl -xe

  • cat /var/log/mysqld.log (在mysql配置文件 /etc/my.cnf中配置)

③ 无法启动的原因一般是由于mysql的目录权限问题

# chown -R mysql:mysql /var/lib/mysql
如果不行再暴力授权到777
# chmod 777 /usr/sbin/mysqld
# chmod 777 /var/lib/mysql/*

④ 重新启动mysql服务

# systemctl start mysqld
# systemctl status mysqld
  1. 登录mysql错误

mysql: error while loading shared libraries: libncurses.so.5: cannot open shared object file

联网直接执行

# yum install libncurses* -y
离线处理方式# 
# cp /lib64/libncurses.so.6 /lib64/libncurses.so.5
或者 添加软连接
# ln -s /lib64/libncurses.so.6 /lib64/libncurses.so.5
  1. 登录后必须修改密码:

ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

防止在远程不能登陆:alter user root identified with mysql_native_password by '123456';(执行这个再继续可能避免出现退出后不能再登录的问题,下面ERROR 1045 (28000))

  1. 设置远程登录

mysql> use mysql;
mysql> update user set host='%' where user='root';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;
mysql> quit;
  1. 解决mysql:ERROR 1045 错误

ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: NO/YES)

# vim /etc/my.cnf
在[mysqld]下添加skip-grant-tables,保存即可。
重启mysql服务
# systemctl stop mysqld
# systemctl start mysqld
  1. 重新登录mysql

# mysql -u root -p
直接回车不需要输入密码(出现Enter Password 也一样直接回车,即可登陆成功)
mysql> USE mysql;
mysql> update user set authentication_string=password('123456') where user='root';
mysql> flush privileges;
mysql> quit;
然后删除/etc/my.cnf文件中添加的skip-grant-tables,重启mysql服务

三、开放端口号:

查看已经开放的端口

firewall-cmd --list-ports 或 firewall-cmd --query-port=3306/tcp

开启端口

firewall-cmd --zone=public --add-port=3306/tcp --permanent

重启防火墙使开放的端口生效:

systemctl restart firewalld.service

四、修改mysql数据库data目录

  1. 创建新的data文件夹

# mkdir /mysql/data/
  1. 停止mysql服务

# service mysqld stop
  1. 复制data文件

# cp -rf /var/lib/mysql /mysql/data/
  1. 编辑my.cnf文件

# vim /etc/my.cnf
  1. 更改文件权限

# chown -R mysql:mysql /mysql/data
  1. 修改mysql配置文件

修改MySQL启动脚本/etc/init.d/mysqld,执行"vim /etc/init.d/mysqld "(如果没有此文件,就不需要修改,这里就没有该文件)

7. 解决权限、路径、配置文件都修改后,仍然无法启动数据库

cat /var/log/mysqld.log出现以下内容:

Can't create test file /mysql/data/mysql/localhost.lower-test

# vim /etc/selinux/config
修改SELINUX=disabled,然后重启服务器
# reboot
再重启mysql服务即正常。
# service mysqld restart

五、设置MySQL数据库服务自启动

# service mysqld status
  1. 通过启动状态,查看mysql.service脚本路径

  1. 将安装目录下的 support-files 目录下mysql.server复制到/etc/rc.d/init.d/mysql

# cp /usr/lib/systemd/system/mysqld.service /etc/init.d/mysql
  1. 复制后赋予权限

# chmod +x /etc/init.d/mysql
  1. 修改脚本,使系统能正常识别

# vim /etc/init.d/mysql
添加下面三行(shell脚本需要保证第一行是#!/bin/bash,否则文件将不能被识别)
#!/bin/bash
#chkconfig: 2345 81 96
#description: StartMySQL
  1. 添加到服务列表

# chkconfig --add mysql
  1. 查看服务列表,服务是否添加成功

# chkconfig --list

注意看到mysql后面的345都是开或者是on表示成功, 如果显示关或者 off 则需要手动开启,执行以下命令

# chkconfig --level 345 mysqld on
  1. 执行reboot重启测试

  • 5
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值