九天猎人 发表于 2024-10-29 11:22:06

纪录学习云盘算第十二天

软件包管理

一、rpm先容

rpm软件包名称:
软件名称 版本号(主版本、次版本、修订号) 操作系统 -----90%的规律
#有依赖关系,不能自动解决依赖关系。
举例:openssh-6.6.1p1-31.el7.x86_64.rpm  
数字前面的是名称
数字是版本号:第一位主版本号,第二位次版本号,带横杠的是修订号, el几---操作系统的版本。  
noarch : 32位64位都支持
x86_64 :  64位
i4-686的包 :32位
devel:表示这个RPM包是软件的开发包;
======

#用rpm安装需要考虑如下信息:
1.需要考虑系统的版本需要与rpm对应
2.系统的架构:如32位还是64位
3.需要考虑依赖关系 rpm安装

语法 # rpm -ivh 软件包名称
-i install
-vh verbose human
-Uupgrade升级

查找rpm包的网站:http://rpmfind.net/http://pkgs.org
1.通过rpm安装
可以先下载下来
# wget http://download-ib01.fedoraproject.org/pub/epel/7/x86_64/Packages/n/ntfs-3g-2017.3.23-11.el7.x86_64.rpm
#wget下载命令
#wget -O 指定存放路径
# rpm -ivh ntfs-3g-2017.3.23-11.el7.x86_64.rpm#本地安装rpm包

2.直接通过连接安装rpm包
# rpm -ivh http://download-ib01.fedoraproject.org/pub/epel/7/x86_64/Packages/n/ntfs-3g-2017.3.23-11.el7.x86_64.rpm 各种查询

==查询  
(从本地的rpm数据库)
-q query
-l list
-f file
-a all
# rpm -qa | grep 软件名  # 查找软件是否安装
# rpm -ql httpd           #查询http安装的文件
# rpm -qf /usr/share/httpd/noindex     #查询该文件属于哪个包
# rpm -qf /etc/passwd#查询某一个文件是哪个软件产生的:只能查询已经安装好的软件 卸载


语法:# rpm -e 软件名称
-e erase
# rpm -e httpd rpm工具管理软件包总结:
1. 很难解决包依赖关系
2. 如果某个文件没有,很难知道它由哪个rpm包提供 二 yum方式管理

#可以自动解决rpm软件依赖关系,虽然是通过yum安装的但是最后执行的还是rpm,也就是说没有rpm命令yum也就不能用了。
分类:本地yum和远程yum
本地yum:
file://
远程yum:
http://
ftp:// yum操纵

安装好环境之后我们有centos自带的官方yum源,我们也可以自行更换或者制作自己的yum源

清理yum缓存:
    # yum clean all

缓存软件包信息:    
 提高搜索/安装软件的速度
   # yum makecache
   
查询yum源信息:  
   # yum repolist    
       
查看命令属于哪个软件
   # yum provides rz    

查看系统已经安装好的软件和没有安装的软件(源里存在即可查到):
    # yum list

安装软件:
    # yum install 软件名称
    # yum install mysql mysql-server -y         #-y跳过确认提示直接安装

重装:
   # yum -y reinstall 软件名        
   
卸载软件:
    # yum erasemysql-server
    # yum remove mysql-server
    # yum -y remove mysql-server
# yum -y remove `rpm -qa | grep httpd`#yum卸载rpm查找出来所有与httpd相关的软件包全部卸载掉 更换网络yum源--aliyun

https://developer.aliyun.com/mirror/centos?spm=a2c6h.13651102.0.0.3e221b11WaK1yM  --阿里yum源地址 # cd /etc/yum.repos.d
# mkdir back
# mv *.repo back
# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo#下载aliyun的yum源
参数解释
curl -o指定存放路径
或者
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
安装扩展源--epel.repo
# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
# cd /etc/yum.repos.d/
# ls
CentOS-Base.repoepel.repo 三 源码包管理

一个软件要在Linux上执行,必须是二进制文件,因此当我们拿到软件源码后,需要将它编译成二进制文件才能在Linux上运行。
源码包的编译用到了linux系统里的编译器,通常源码包都是用C语言开发的,这也是因为C语言为linux上最标准的程序语言。Linux上的C语言编译器叫做gcc,利用它就可以把C语言变成可执行的二进制文件。 源码安装的优点,编译安装过程,可以设定参数按照需求增加功能,进行安装,并且可以指定安装的版本,可以指定安装路径,灵活性比较大。 获得源码包途径 官方网站,可以获得最新的软件包
mysql: MySQL
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.27.tar.gz

一、Mysql

mysql安装

关闭防火墙和selinux
1、编译安装mysql5.7

1、清理安装环境:

# systemctl stop mariadb mysqld
# yum erase mariadb mariadb-server mariadb-libs mariadb-devel -y
# userdel -r mysql
# rm -rf /etc/my*
# rm -rf /var/lib/mysql 2、创建mysql用户

# useradd -r mysql -M -s /bin/nologin
-M 不创建用户的家目录 3、从官网下载tar包

wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.27.tar.gz
4、安装编译工具

# 请确保yum源可以用
# yum -y install ncurses ncurses-devel openssl-devel bison gcc gcc-c++ make cmake 5、创建mysql目录

# mkdir -p /usr/local/{data,mysql,log} 6、解压

# tar xzvf mysql-boost-5.7.27.tar.gz 7、编译安装

cd 解压的mysql目录
# cd mysql-5.7.27/
# cmake . \
-DWITH_BOOST=boost/boost_1_59_0/ \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DSYSCONFDIR=/etc \
-DMYSQL_DATADIR=/usr/local/data \
-DINSTALL_MANDIR=/usr/share/man \
-DMYSQL_TCP_PORT=3306 \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_READLINE=1 \
-DWITH_SSL=system \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1

参数详解:
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \   安装目录
-DSYSCONFDIR=/etc \   配置文件存放 (默认可以不安装配置文件)
-DMYSQL_DATADIR=/usr/local/data \   数据目录   错误日志文件也会在这个目录
-DINSTALL_MANDIR=/usr/share/man \     帮助文档
-DMYSQL_TCP_PORT=3306 \     默认端口
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \sock文件位置,用来做网络通信的,客户端连接服务器的时候用
-DDEFAULT_CHARSET=utf8 \  默认字符集。字符集的支持,可以调
-DEXTRA_CHARSETS=all \   扩展的字符集支持所有的
-DDEFAULT_COLLATION=utf8_general_ci \支持的
-DWITH_READLINE=1 \  上下翻历史命令
-DWITH_SSL=system \  使用私钥和证书登陆(公钥)可以加密。 适用与长连接。坏处:速度慢
-DWITH_EMBEDDED_SERVER=1 \   嵌入式数据库
-DENABLED_LOCAL_INFILE=1 \  从本地倒入数据,不是备份和恢复。
-DWITH_INNOBASE_STORAGE_ENGINE=1默认的存储引擎,支持外键
https://img-blog.csdnimg.cn/img_convert/f325925c8b87bc7309fcb6b8581e1cbd.jpeg
# make && make install
如果安装出错,想重新安装:
 不用重新解压,只需要删除安装目录中的缓存文件CMakeCache.txt
https://img-blog.csdnimg.cn/img_convert/6e2ba5fb6300da19c7b7ffccfda633ab.jpeg
**需要很长时间!**大约半小时
8、初始化

# cd /usr/local/mysql
# chown -R mysql.mysql .
# ./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/data     ---初始化完成之后,一定要记住提示最后的密码用于登陆或者修改密码
https://img-blog.csdnimg.cn/img_convert/09f1a73be120cac066e8595554774503.jpeg
初始化,只需要初始化一次
# vim /etc/my.cnf  ---如果打开文件有内容将文件中所有内容注释掉,在添加如下内容

basedir=/usr/local/mysql     #指定安装目录
datadir=/usr/local/data#指定数据存放目录
https://img-blog.csdnimg.cn/img_convert/456dc80670995b9d8418d56325925f5f.jpeg
9、启动mysql

# cd /usr/local/mysql
# ./bin/mysqld_safe --user=mysql &

启动之后再按一下回车!即可后台运行
https://img-blog.csdnimg.cn/img_convert/3bdc810ddb31a53acd69c2fdd6c767f9.jpeg
10、登录mysql

# /usr/local/mysql/bin/mysql -uroot -p'GP9TKGgY9i/8'
mysql: Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.27
Copyright (c) 2000, 2019, 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> exit



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 纪录学习云盘算第十二天