OpenEuler系统安装与MySQL数据安装
使用工具及镜像:
虚拟机:VMware16
openeuler镜像:openEuler-22.03-LTS-x86_64
mysql版本:mysql-5.7.40-1.el7.x86_64.rpm-bundle
一、系统安装(多图)
-
选择合适的Linux版本
-
根据需要设置处理和内存
-
网络连接设置
如果设置与主机同一个网段就设置桥接,其他模式也可以满足使用
-
选择镜像
下载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
-
进入安装步骤
选择第一个Install openEuler 22.0.-LTS进入安装界面
-
安装信息介绍
① 可设置分区,我选择的是自动分区(点击进去后完成即可),也可以根据自己需要手动分区;
② 软件选择,根据需要选择预按照文件,一般为了服务器纯净选择最小安装;
③ 网络和主机名可以通过命令进行设置,这里暂不设置,如果准备好了点击启用即可;
④ 设置ROOT密码,对密码强度有要求,需包含三种符合(注意设置完记录一下);
⑤ 根据需要创建其他用户和密码;
⑥ 开始安装
-
配置系统静态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
-
重启网络
# systemctl restart NetworkManager
-
安装常用的命令
# yum -y install tar # yum -y install vim
二、下载及安装MySQL数据库(采用tar包安装)
-
下载MySQL数据库
https://downloads.mysql.com/archives/community/
-
将下载好的RPM Bundle包上传至服务器
-
执行命令查看服务器是否有mysql项
# yum repolist all | grep mysql
-
开始解压上传的安装包
# tar -xvf mysql-5.7.40-1.el7.x86_64.rpm-bundle.tar -C /mysql/mysql
解压结果如下:
-
使用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 命令查看安装情况:
-
初始化数据库
# 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
-
登录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
-
登录后必须修改密码:
ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘123456’;
防止在远程不能登陆:alter user root identified with mysql_native_password by ‘123456’;(执行这个再继续可能避免出现退出后不能再登录的问题,下面ERROR 1045 (28000))
-
设置远程登录
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;
-
解决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
-
重新登录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目录
-
创建新的data文件夹
# mkdir /mysql/data/
-
停止mysql服务
# service mysqld stop
-
复制data文件
# cp -rf /var/lib/mysql /mysql/data/
-
编辑my.cnf文件
# vim /etc/my.cnf
-
更改文件权限
# chown -R mysql:mysql /mysql/data
-
修改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
-
通过启动状态,查看mysql.service脚本路径
-
将安装目录下的 support-files 目录下mysql.server复制到/etc/rc.d/init.d/mysql
# cp /usr/lib/systemd/system/mysqld.service /etc/init.d/mysql
-
复制后赋予权限
# chmod +x /etc/init.d/mysql
-
修改脚本,使系统能正常识别
# vim /etc/init.d/mysql 添加下面三行(shell脚本需要保证第一行是#!/bin/bash,否则文件将不能被识别) #!/bin/bash #chkconfig: 2345 81 96 #description: StartMySQL
-
添加到服务列表
# chkconfig --add mysql
-
查看服务列表,服务是否添加成功
# chkconfig --list
注意看到mysql后面的345都是开或者是on表示成功, 如果显示关或者 off 则需要手动开启,执行以下命令
# chkconfig --level 345 mysqld on
-
执行reboot重启测试
本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://www.net2asp.com/5d45ee40cc.html
