银河麒麟系统安装mysql5.7【亲测可行】

一、安装环境

cpu:I5-10代;

主板:华硕;

OS:银河麒麟V10(SP1)未激活

架构:Linux 5.10.0-9-generic x86_64 GNU/Linux

mysql版本:mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz

安装包存放:/data/download

安装目录:/usr/local/mysql

数据目录:/data/mysql

二、安装步骤

1、修改系统root密码

我安装的麒麟系统开机登录默认子用户,不是root用户,权限小,很多文件都是只读,所以切换到root用户,下面是root用户修改密码的方法。

① 开机按e进入编辑页面
② 修改配置文件如下

将ro改为rw,将security的值改为none,后面加上 init=/bin/bash


注意:开机小心狂按e会导致文件开头多出很多e字母,记得删掉;

③ 按F10保存退出,然后输入以下命令设置密码
bash 复制代码
passwd root

输入两次密码后,输入exec /sbin/init进行重启即可;

2、下载自己电脑对应版本mysql安装包

下载地址:mysql官网

上传至电脑,我的存放在/data/download目录下;

3、安装mysql

切换root用户(需输入刚才设置的root密码):

bash 复制代码
su

进入mysql安装包目录,解压:

bash 复制代码
cd /data/download

tar -zxf ./mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz

移动并重命名:

bash 复制代码
mv mysql-5.7.34-linux-glibc2.12-x86_64 /usr/local/mysql

创建mysql用户组和用户、数据目录并修改权限:

bash 复制代码
groupadd mysql
useradd -r -g mysql mysql
mkdir -p /data/mysql	# 创建数据目录
chown mysql:mysql -R /data/mysql

配置my.cnf:

bash 复制代码
vim /etc/my.cnf

内容如下:

bash 复制代码
[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
symbolic-links=0
explicit_defaults_for_timestamp=true
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

default_password_lifetime=0

lower_case_table_names = 1

character-set-client-handshake = FALSE
collation-server = utf8mb4_unicode_ci
character_set_server=utf8mb4
init_connect='SET NAMES utf8mb4'

max_allowed_packet=10485760

[mysql]
default-character-set = utf8mb4

[client]
default-character-set=utf8mb4

注意basedir和datadir需要改成自己实际目录!
进入mysql的bin目录,进行初始化:

bash 复制代码
cd /usr/local/mysql/bin

./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize

将mysql.server放到/etc/init.d/mysql中并设置权限:

bash 复制代码
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

chmod +x /etc/init.d/mysql

启动:

bash 复制代码
systemctl start mysql

#查看是否启动
ps aux | grep mysql

小插曲:此处我用service mysql start启动提示我mysql.service没找到,但是init.d下明明有mysql,用上面命令启动就行,奇怪。

进入mysql:

bash 复制代码
/usr/local/mysql/bin/mysql -uroot -p

此处提示我"缺少libncurses.so.5文件",网上解决方式将lib64下的libncurses.so.6做个软连接,但是我这个系统lib64下没有这个文件,我的是在lib32,用lib32做完链接后还是提示找不到;

最后用下面方式解决:

bash 复制代码
apt-get update

apt-get install libncurses5

如果上面安装不了,执行以下apt-get upgrade再安装试试。

查看密码:

bash 复制代码
cat /data/mysql/mysql.err

找到随机密码并复制;

登录:

bash 复制代码
/usr/local/mysql/bin/mysql -uroot -p

输入刚才复制的密码回车即可:

修改密码:

bash 复制代码
SET PASSWORD=PASSWORD('123456);
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES;

开放远程连接:

bash 复制代码
use mysql;
update user set host='%' where user='root';
flush privileges;

最后做个软连接,不用每次都到mysql的bin下运行:

bash 复制代码
ln -s /usr/local/mysql/bin/mysql /usr/bin

总结:

在麒麟系统安装遇到几个问题:

1、切换root用户;

2、service mysql start起不来;

3、进入mysql提示缺少文件libncurses.so.5;

相关推荐
cocologin19 分钟前
RIP 技术深度解析
运维·网络·网络协议
庸子37 分钟前
基于Jenkins和Kubernetes构建DevOps自动化运维管理平台
运维·kubernetes·jenkins
眠修1 小时前
Kuberrnetes 服务发布
linux·运维·服务器
好奇的菜鸟2 小时前
Docker 配置项详解与示例
运维·docker·容器
xcs194052 小时前
集运维 麒麟桌面版v10 sp1 2403 aarch64 离线java开发环境自动化安装
运维·自动化
BAOYUCompany2 小时前
暴雨服务器成功中标华中科技大学集成电路学院服务器采购项目
运维·服务器
超龄超能程序猿3 小时前
Bitvisse SSH Client 安装配置文档
运维·ssh·github
奈斯ing3 小时前
【Redis篇】数据库架构演进中Redis缓存的技术必然性—高并发场景下穿透、击穿、雪崩的体系化解决方案
运维·redis·缓存·数据库架构
鳄鱼皮坡4 小时前
仿muduo库One Thread One Loop式主从Reactor模型实现高并发服务器
运维·服务器
即将头秃的程序媛4 小时前
centos 7.9安装tomcat,并实现开机自启
linux·运维·centos