麒麟V10(x86_64)安装部署MySQL-5.1.70

news2024/12/24 20:46:24

麒麟V10(x86_64)安装部署MySQL-5.1.70

1. 主机信息

[kalami@kysrv1 ~]$ uname -a
Linux kysrv1 4.19.90-24.4.v2101.ky10.x86_64 #1 SMP Mon May 24 12:14:55 CST 2021 x86_64 x86_64 x86_64 GNU/Linux
[kalami@kysrv1 ~]$ 
[kalami@kysrv1 ~]$ uname -m
x86_64
[kalami@kysrv1 ~]$ 
[kalami@kysrv1 ~]$ uname -r
4.19.90-24.4.v2101.ky10.x86_64
[kalami@kysrv1 ~]$ 
[kalami@kysrv1 ~]$ 
[kalami@kysrv1 ~]$ lscpu
架构:                           x86_64
CPU 运行模式:                   32-bit, 64-bit
字节序:                         Little Endian
Address sizes:                   45 bits physical, 48 bits virtual
CPU:                             4
在线 CPU 列表:                   0-3
每个核的线程数:                  1
每个座的核数:                    2
座:                             2
NUMA 节点:                      1
厂商 ID:                        AuthenticAMD
CPU 系列:                       25
型号:                           80
型号名称:                       AMD Ryzen 5 PRO 5650U with Radeon Graphics
步进:                           0
CPU MHz:                        2295.689
BogoMIPS:                       4591.37
超管理器厂商:                   VMware
虚拟化类型:                     完全
L1d 缓存:                       128 KiB
L1i 缓存:                       128 KiB
L2 缓存:                        2 MiB
L3 缓存:                        32 MiB
NUMA 节点0 CPU:                 0-3
Vulnerability Itlb multihit:     Not affected
Vulnerability L1tf:              Not affected
Vulnerability Mds:               Not affected
Vulnerability Meltdown:          Not affected
Vulnerability Spec store bypass: Vulnerable
Vulnerability Spectre v1:        Mitigation; usercopy/swapgs barriers and __user pointer sanitization
Vulnerability Spectre v2:        Mitigation; Full AMD retpoline, IBPB conditional, STIBP disabled, RSB filling
Vulnerability Srbds:             Not affected
Vulnerability Tsx async abort:   Not affected
标记:                           fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_ts
                                 c rep_good nopl xtopology tsc_reliable nonstop_tsc cpuid extd_apicid pni pclmulqdq ssse3 fma cx16 sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx f16c rdrand
                                  hypervisor lahf_lm cmp_legacy extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw topoext ibpb vmmcall fsgsbase bmi1 avx2 smep bmi2 erms invpcid rds
                                 eed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 xsaves clzero arat umip pku ospke vaes vpclmulqdq rdpid overflow_recov succor

2. 卸载mariadb

先卸载系统自带的mariadb 数据库。

sudo yum autoremove mariadb mariadb-server

效果如下:

[root@kysrv1 support-files]# yum autoremove mariadb mariadb-server
依赖关系解决。
==============================================================================================================================================================================================
 Package                                           Architecture                          Version                                               Repository                                Size
==============================================================================================================================================================================================
移除:
 mariadb                                           x86_64                                3:10.3.9-9.p02.ky10                                   @anaconda                                 37 M
 mariadb-server                                    x86_64                                3:10.3.9-9.p02.ky10                                   @anaconda                                 91 M
清除未被使用的依赖关系:
 mariadb-common                                    x86_64                                3:10.3.9-9.p02.ky10                                   @anaconda                                179 k
 mariadb-errmessage                                x86_64                                3:10.3.9-9.p02.ky10                                   @anaconda                                2.3 M
 perl-DBD-MySQL                                    x86_64                                4.046-6.ky10                                          @anaconda                                333 k

事务概要
==============================================================================================================================================================================================
移除  5 软件包

将会释放空间:132 M
确定吗?[y/N]: y
运行事务检查
事务检查成功。
运行事务测试
事务测试成功。
运行事务
  准备中  :                                                                                                                                                                               1/1 
  运行脚本: mariadb-3:10.3.9-9.p02.ky10.x86_64                                                                                                                                            1/1 
  删除    : mariadb-3:10.3.9-9.p02.ky10.x86_64                                                                                                                                            1/5 
  运行脚本: mariadb-server-3:10.3.9-9.p02.ky10.x86_64                                                                                                                                     2/5 
  删除    : mariadb-server-3:10.3.9-9.p02.ky10.x86_64                                                                                                                                     2/5 
警告:文件 /var/lib/mysql:移除失败:没有那个文件或目录
警告:文件 /run/mariadb:移除失败:没有那个文件或目录

  运行脚本: mariadb-server-3:10.3.9-9.p02.ky10.x86_64                                                                                                                                     2/5 
  删除    : mariadb-errmessage-3:10.3.9-9.p02.ky10.x86_64                                                                                                                                 3/5 
  删除    : mariadb-common-3:10.3.9-9.p02.ky10.x86_64                                                                                                                                     4/5 
  删除    : perl-DBD-MySQL-4.046-6.ky10.x86_64                                                                                                                                            5/5 
  运行脚本: perl-DBD-MySQL-4.046-6.ky10.x86_64                                                                                                                                            5/5 
  验证    : mariadb-3:10.3.9-9.p02.ky10.x86_64                                                                                                                                            1/5 
  验证    : mariadb-common-3:10.3.9-9.p02.ky10.x86_64                                                                                                                                     2/5 
  验证    : mariadb-errmessage-3:10.3.9-9.p02.ky10.x86_64                                                                                                                                 3/5 
  验证    : mariadb-server-3:10.3.9-9.p02.ky10.x86_64                                                                                                                                     4/5 
  验证    : perl-DBD-MySQL-4.046-6.ky10.x86_64                                                                                                                                            5/5 

已移除:
  mariadb-3:10.3.9-9.p02.ky10.x86_64       mariadb-common-3:10.3.9-9.p02.ky10.x86_64       mariadb-errmessage-3:10.3.9-9.p02.ky10.x86_64       mariadb-server-3:10.3.9-9.p02.ky10.x86_64      
  perl-DBD-MySQL-4.046-6.ky10.x86_64      

完毕!
[root@kysrv1 support-files]# 

删除 /etc/my.cnf.d 目录:

rm -rf /etc/my.cnf.d

3. 安装MySQL-5.1.70

[1]. 下载二进制安装包

下载地址: MySQL :: Download MySQL Community Server (Archived Versions)

在这里插入图片描述

下载 "Compressed TAR Archive" 包。

在这里插入图片描述

[2]. 创建组和用户

创建组和用户

groupadd dba
useradd -g dba -m mysql

设置新用户密码

passwd mysql

[3]. 上传安装包并解压

C:\Users\kalami\Downloads>scp mysql-5.1.70-linux-x86_64-glibc23.tar.gz mysql@192.168.58.145:/home/mysql/

Authorized users only. All activities may be monitored and reported.
mysql@192.168.58.145's password:
mysql-5.1.70-linux-x86_64-glibc23.tar.gz                                              100%  128MB 150.0MB/s   00:00

C:\Users\kalami\Downloads>

上传完后,用如下命令解包:

$ tar xvfz mysql-5.1.70-linux-x86_64-glibc23.tar.gz

mysql-5.1.70-linux-x86_64-glibc23 下的内容移到 /home/mysql/ 目录下。

cd mysql-5.1.70-linux-x86_64-glibc23/ 
mv * ../

cd ..
rm -rf mysql-5.1.70-linux-x86_64-glibc23
[mysql@kysrv1 ~]$ pwd
/home/mysql
[mysql@kysrv1 ~]$ ls
bin  COPYING  data  docs  include  INSTALL-BINARY  lib  man  mysql-test  README  scripts  share  sql-bench  support-files
[mysql@kysrv1 ~]$ 

[4]. 设置环境变量

root用户执行如下语句:

echo "PATH=/home/mysql/bin:$PATH" > /etc/profile.d/mysql.sh
echo "LD_LIBRARY_PATH=/home/mysql/lib/mysql:$LD_LIBRARY_PATH" >> /etc/profile.d/mysql.sh
source /etc/profile.d/mysql.sh

[5]. 配置my.cnf文件

从源码包/home/mysql/support-files/my-small.cnf 拷贝一份,复制到/etc/my.cnf

sudo cp /home/mysql/support-files/my-small.cnf /etc/my.cnf

编辑 /etc/my.cnf 配置文件:

[mysqld]
basedir = /home/mysql
datadir = /home/mysql/data
pid-file = /var/run/mysql/mysql.pid
log-error = /var/log/mysql/kysrv1_err.log

[mysqld] 下增加如上内容(my.cnf 文件37行左右),修改后的内容如下:

# The MySQL server
[mysqld]
port            = 3306
socket          = /tmp/mysql.sock
skip-locking
key_buffer_size = 16K
max_allowed_packet = 1M
table_open_cache = 4
sort_buffer_size = 64K
read_buffer_size = 256K
read_rnd_buffer_size = 256K
net_buffer_length = 2K
thread_stack = 128K
basedir = /home/mysql
datadir = /home/mysql/data
pid-file = /var/run/mysql/mysql.pid
log-error = /var/log/mysql/kysrv1_err.log

创建对应目录
root用户执行。

mkdir -p /var/run/mysql
mkdir -p /var/log/mysql
chown mysql /var/run/mysql

[6]. 初始化

root用户执行如下语句:

./scripts/mysql_install_db --basedir=/home/mysql --datadir=/home/mysql/data --user=mysql

执行效果如下:

[mysql@kysrv1 ~]$ pwd
/home/mysql
[mysql@kysrv1 ~]$ 
[mysql@kysrv1 ~]$ 
[mysql@kysrv1 ~]$ su
密码:
[root@kysrv1 mysql]# ./scripts/mysql_install_db --basedir=/home/mysql --datadir=/home/mysql/data --user=mysql
Installing MySQL system tables...
OK
Filling help tables...
OK

To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:

/home/mysql/bin/mysqladmin -u root password 'new-password'
/home/mysql/bin/mysqladmin -u root -h kysrv1 password 'new-password'

Alternatively you can run:
/home/mysql/bin/mysql_secure_installation

which will also give you the option of removing the test
databases and anonymous user created by default.  This is
strongly recommended for production servers.

See the manual for more instructions.

You can start the MySQL daemon with:
cd /home/mysql ; /home/mysql/bin/mysqld_safe &

You can test the MySQL daemon with mysql-test-run.pl
cd /home/mysql/mysql-test ; perl mysql-test-run.pl

Please report any problems with the /home/mysql/scripts/mysqlbug script!

[root@kysrv1 mysql]#

[7]. 修改mysqld_safe脚本

先备份 /home/mysql/bin/mysqld_safe 脚本。

cp mysqld_safe mysqld_safe_bak

修改 /home/mysql/bin/mysqld_safe 脚本,将 "/usr/local/mysql" 替换成 "/home/mysql"

可以在 vi编辑模式下,执行如下替换命令:

%s#/usr/local/mysql#/home/mysql#g

[8]. 配置启动脚本,并启动服务

[root@kysrv1 mysql]# cp /home/mysql/support-files/mysql.server /etc/init.d/mysqld
[root@kysrv1 mysql]# chmod +x /etc/init.d/mysqld
[root@kysrv1 mysql]# 
#设置开机自启
[root@kysrv1 mysql]# systemctl enable mysqld
mysqld.service is not a native service, redirecting to systemd-sysv-install.
Executing: /usr/lib/systemd/systemd-sysv-install enable mysqld
[root@kysrv1 mysql]# 

其他命令

#启动服务
[root@kysrv1 mysql]# service mysqld start
Starting MySQL. ERROR! Manager of pid-file quit without updating file.
[root@kysrv1 mysql]# 
#查看服务状态
[root@kysrv1 mysql]# service mysqld status
 ERROR! MySQL is not running, but lock exists
[root@kysrv1 mysql]# 
#停止服务
[root@kysrv1 mysql]# service mysqld stop

4. 使用MySQL-5.1.70

[1]. 配置环境变量

配置环境变量之后,可以在任何用户目录下都可以使用MySQL 了。编辑/etc/profile文件,增加如下内容:

export PATH=/home/mysql/bin:$PATH
export LD_LIBRARY_PATH=/home/mysql/lib/mysql:$LD_LIBRARY_PATH

vim /etc/profile :

# /etc/profile

# System wide environment and startup programs, for login setup
# Functions and aliases go in /etc/bashrc

# It's NOT a good idea to change this file unless you know what you
# are doing. It's much better to create a custom.sh shell script in
# /etc/profile.d/ to make custom changes to your environment, as this
# will prevent the need for merging in future updates.

pathmunge () {
    case ":${PATH}:" in
        *:"$1":*)
            ;;
        *)
            if [ "$2" = "after" ] ; then
                PATH=$PATH:$1
            else
                PATH=$1:$PATH
            fi
    esac
}


if [ -x /usr/bin/id ]; then
    if [ -z "$EUID" ]; then
        # ksh workaround
        EUID=`/usr/bin/id -u`
        UID=`/usr/bin/id -ru`
    fi
    USER="`/usr/bin/id -un`"
    LOGNAME=$USER
    MAIL="/var/spool/mail/$USER"
fi

# Path manipulation
if [ "$EUID" = "0" ]; then
    pathmunge /usr/sbin
    pathmunge /usr/local/sbin
else
    pathmunge /usr/local/sbin after
    pathmunge /usr/sbin after
fi

HOSTNAME=`/usr/bin/hostnamectl --transient  2>/dev/null`
HISTSIZE=1000
if [ "$HISTCONTROL" = "ignorespace" ] ; then
    export HISTCONTROL=ignoreboth
else
    export HISTCONTROL=ignoredups
fi

export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL

for i in /etc/profile.d/*.sh /etc/profile.d/sh.local ; do
    if [ -r "$i" ]; then
        if [ "${-#*i}" != "$-" ]; then 
            . "$i"
        else
            . "$i" >/dev/null
        fi
    fi
done

unset i
unset -f pathmunge

if [ -n "${BASH_VERSION-}" ] ; then
        if [ -f /etc/bashrc ] ; then
                # Bash login shells run only /etc/profile
                # Bash non-login shells run only /etc/bashrc
                # Check for double sourcing is done in /etc/bashrc.
                . /etc/bashrc
       fi
fi

export PATH=/home/mysql/bin:$PATH
export LD_LIBRARY_PATH=/home/mysql/lib/mysql:$LD_LIBRARY_PATH

使参数生效,执行如下命令:

[root@kysrv1 mysql]# source /etc/profile

[2]. 设置密码

[root@kysrv1 mysql]# mysqladmin -u root password 'root123'

设置完用户密码后,再去登录验证。运行效果如下:

[root@kysrv1 mysql]# mysqladmin -u root password 'root123'
[root@kysrv1 mysql]# mysql
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
[root@kysrv1 mysql]#
[root@kysrv1 mysql]#
[root@kysrv1 mysql]# mysql -uroot -proot123
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.1.70 MySQL Community Server (GPL)

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

[3]. 麒麟运行效果

在这里插入图片描述

[4]. 服务后台启动方法

如果将MySQL服务以后台启动方式运行,则可以使用mysqld_safe启动脚本。

sudo /home/mysql/bin/mysqld_safe --user=mysql &
[root@kysrv1 ~]# /home/mysql/bin/mysqld_safe --user=mysql &
[1] 3507
[root@kysrv1 ~]# 240826 21:16:04 mysqld_safe Logging to '/var/log/mysql/kysrv1_err.log'.
240826 21:16:04 mysqld_safe The file /usr/local/mysql/bin/mysqld
does not exist or is not executable. Please cd to the mysql installation
directory and restart this script from there as follows:
./bin/mysqld_safe&
See http://dev.mysql.com/doc/mysql/en/mysqld-safe.html for more information
[root@kysrv1 ~]#

[5]. 故障排查

如果出现启动故障,则通过查看 /var/log/mysql/kysrv1_err.log 日志内容进行排查。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2076762.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

深度学习模板方法设计模式

文章目录 前言一、介绍二、特点三、详细介绍1.核心组成2.代码示例3.优缺点优点缺点 4.使用场景 总结 前言 模板方法设计模式是行为型设计模式,主要是定义算法框架,并将一些步骤的实现延迟到子类,重新定义算法的步骤。 一、介绍 模板设计模式…

项目初始化踩坑记录

dependence not found: D:/yupiProject/yubi-bi-frontend/node_modules/umijs/plugins/node_modules/react-intl 这个没有在github上找到解决方法,于是我在命令行 npm install 执行这个之后,就可以重新运行了 思考过程:突然空了个文件我…

开放式耳机是什么意思?开放式耳机推荐

在探讨音频设备的广阔领域中,开放式耳机以其独特的设计理念和卓越的性能体验,逐渐成为耳机市场上一股不可忽视的力量。顾名思义,开放式耳机是一种采用开放式设计,不堵塞或覆盖耳朵,允许佩戴者同时听到部分外部声音的耳…

Unity滚滚车轮计划 之 新输入系统控制2D角色移动动画(俯视)

本系列的初衷是因为很多时候基础代码不得不重复又重复,所以为了更快更好地学习到新的知识,我就把已经掌握的知识造成自己的轮子吧,等用到的时候直接复制就行了 叠甲:虽然不能保证全是原创,有些写法可能烂大街&#xff…

arm64--内嵌汇编

内嵌汇编代码基本用法 1.作用:对于特定重要和时间敏感的代码进行优化,同时在C语言中访问某些特殊指令(例如内存屏障指令)来实现特殊功能 2.内嵌汇编代码主要有两种形式 基础内嵌汇编代码:不带任何参数 扩展内嵌汇…

【ES6新特性】介绍ES6新特性的内容,如var,Let,Const声明变量的区别,解构赋值的概念,字符串的扩展,数组的扩展,以及对象的扩展。

目录 1.var,let,const的区别 1.1 var 1.2 let 1.3 const 1.4 区别总结 2.解构赋值 2.1 基本解构化赋值 2.2 数组取值 2.3 对象解构化赋值和取值 2.4 Math对象的解构化使用 3. 字符串扩展 3.1 新增字符串遍历方式 3.2 模版字符串 3.3 字符串…

数据库学习笔记

一、数据库相关概念 主流的关系型数据库管理系统(DBMS) 关系型数据库以 表格 的形式存在,以 行和列 的形式存取数据,关系型数据库这一系列的行和列被称为表,无数张表组成了 数据库 ,常见的关系型数据库有 …

绿色积分引领:我店平台的可持续消费革命

在当今数字化浪潮的推动下,“我店”凭借其创新的环保积分系统,在消费市场中脱颖而出,逐渐改变着市场的结构。本文将详细分析该平台的竞争优势、市场策略以及它如何利用创新手段塑造未来的消费趋势。 一、环保积分:消费体验革新的关…

在ElementUI项目中集成iconfont图标库

在前端项目开发中经常会遇到使用的组件库提供的ICON图标不够用的情况。最常见的解决方案无非就是把设计图的图标切图引入到项目中。还有就是使用svg图标,封装一个渲染组件在项目里面直接引入这个组件。 本文将介绍另一种方法,即集成iconfont图标库的图标…

redis面试(二十二)读锁释放

假设现在已经有各种锁的重入什么的,那如何释放锁? 读锁读锁 假如说,同一个线程多次加读锁,或者不同的线程加了多个读锁 当前的锁结构长这样 anyLock: { “mode”: “read”, “UUID_01:threadId_01”: 2, “UUID_02:threadId_02…

CRUD的最佳实践,联动前后端,包含微信小程序,API,HTML等(二)

CRUD老生常谈,但是我搜索了一圈,发觉几乎是着重在后端,也就是API部分! 无外乎2个思路 1.归总的接口,比如一个接口,实现不同表的CRUD 2.基于各自的表,使用代码生成器实现CRUD 个人来说是推荐2&am…

css设置input单选radio多选checkbox样式

最近接手一个古老的项目,要修改里边的主题颜色,使用css的var方法一路轻松,最后在input的单选radio和多选checkbox被踩了刹车,也是有几年没做这种原始的项目手生了,最后经过几番折腾后,通过input的伪元素将其…

FPGA开发——使用verilog实现异步FIFO

一、FIFO 介绍 1、FIFO的分类 FIFO ( First In First Out)先进先出存储器。根据接入的时钟信号,可以分为同步 FIFO 和异步 FIFO 。 FIFO 底层是基于双口 RAM ,同步 FIFO 的读写时钟一致,异步 FIFO 读时钟和…

一看就会的Mysql 集群技术

目录 一、Mysql介绍 1.1什么是MySQL 1.2MySQL的优势 1.3MySQL的常用语句 二、MySQL源码安装 三、实验练习 3.1MySQL部署 实验环境 实验步骤 1.创建用户,数据目录,更改权限 2.修改文件 3.初始化,会生成一个密码,将其保…

没有人会窃取你的想法,关键在于执行

没有人会窃取你的想法,关键在于执行 引言 当我第一次读到 Pieter Levels 的创业故事时,我感到无比激动和鼓舞。那种看到未来无限可能的感觉,让我充满了希望与奋斗的力量。他的经历不仅让我明白了创意的价值,更重要的是让我深刻感…

内网穿透的几种方法

内网穿透的几种方法 随着网络技术和应用的不断发展,越来越多的企业和个人需要实现内外网之间的数据交互和服务访问。然而,由于防火墙、NAT(网络地址转换)等安全措施的存在,直接从外部访问内部网络中的服务器或设备变得…

Linux基础软件-dns(一)

作者介绍:简历上没有一个精通的运维工程师。希望大家多多关注作者,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。 Linux进阶部分又分了很多小的部分,我们刚讲完了Linux日常运维。讲的那些东西都算是系统自带的,但是Linux作为一个…

Nvidia驱动莫名其妙不好使了?nvidia-smi报错?如何解决?已解决!!

文章目录 一、报错提示二、解决方案2.1 原因1的解决办法2.2 原因2的解决方案 一、报错提示 Ubuntu20.04出现Failed to initialize NVML: Driver/library version mismatch问题NVIDIA-SMI has failed because it couldn‘t communicate with the NVIDIA driver. 二、解决方案 …

深入探究linux文件IO

一、原子操作和竞争条件 所有系统调用都是以原子操作方式执行的。之所以这么说,是指内核保证了某系统调用中的所有步骤会作为独立操作而一次性加以执行,其间不会为其他进程或线程所中断。 以独占方式创建一个文件 结合 O_CREAT 和 O_EXCL 标志来一次性…

AI学习记录 - 怎么理解 torch 的 torch.nn.BatchNorm2d

画图不易,有用就点个赞 这里创建了一个随机张量,形状为 (4, 3, 4, 4),分别对应 形状为 (batch_size, num_channels, height, width) batch_size:批次 num_channels: 通道(什么是通道看上一章节&#xff0…