银河麒麟系统安装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;

相关推荐
榆榆欸34 分钟前
4.Socket类、InetAddr类、Epoll类实现模块化
linux·c++·tcp/ip
易保山2 小时前
MIT6.S081 - Lab6 Copy-on-Write(写时复制)
linux·操作系统·c
獨枭2 小时前
Linux 下安装和使用 Jupyter Notebook
linux·chrome·jupyter
Monee..2 小时前
linux里安装pip和conda
linux·conda·pip
阳区欠3 小时前
【Linux】进程通信
linux·运维·服务器·共享内存·进程通信·system v·管道文件
may_一一3 小时前
终端SSH连接工具SecureCRT安装和连接Linux
运维·服务器·ssh
姓刘的哦4 小时前
Ubuntu环境安装
linux·运维·ubuntu
春生黎至10054 小时前
GZ073网络系统管理赛项赛题第1套模块A:网络构建解题笔记
运维·网络
IT程序媛-桃子4 小时前
【网安面经合集】42 道高频 Web 安全面试题全解析(附原理+防御+思路)
运维·网络·安全·面试
❀͜͡傀儡师4 小时前
多台服务器上docker部署 Redis 集群
运维·服务器·redis