作为一个完全零基础接触崖山数据库的新手,我的首要任务就是完成数据库的安装部署。在此过程中,我遇到了多个技术性和操作性的问题。这些问题不仅延长了安装时间,也给我带来了很大的压力。以下是我在安装部署过程中遇到的一系列问题以及相应的心得体会,希望能为大家提供参考和借鉴。
由于此前未接触过 Linux 系统,所以我首先需要完成对 Linux 的系统学习,幸运的是,我在 B 站上找到了韩顺平老师的课程,老师讲的很细致,使我逐渐对 Linux 系统熟悉起来,期间我熟悉了各种操作指令,同时我也学会了如何使用虚拟机, xshell , xftp 等生产力工具。有了这些基础,我才算真正进入到了崖山数据库系统的安装过程。
安装过程中,我参考 YashanDB 官网的安装教程,顺利完成了安装前的准备工作(服务器准备,环境及参数调整,安装包下载),进入单机部署环节,随后,问题接踵而来。
在执行命令时,出现了 bash: ./bin/yasboot: No such file or directory 的错误提示。这种错误提示表明系统在指定的路径下找不到所需的执行文件, 这是由于我下载安装包后没有将其放在对应的文件夹里并解压。
心得体会 :
Ø 确认当前工作目录 :在开始安装之前,使用 pwd 命令确认当前工作目录,确保已经进入了正确的目录。
Ø 检查目录内容 :使用 ls ( 或 ll ) 命令检查当前目录下是否存在所需的文件和目录。例如, ls ./bin 可以查看 bin 目录下的文件。
Ø 解压缩文件 :如果文件不在预期目录下, 还 可能是文件没有正确解压缩。使用 tar -zxvf yashandb-personal-23.2.3.100-linux-x86_64.tar.gz 重新解压缩文件,并确认所有文件都已经解压缩到指定目录。


配置文件(如 yashandb.toml 和 hosts.toml )中的 用户名、密码、 IP 地址、端口号或路径设置错误都会导致 出现 问题 ,我 就是由于用户名以及密码填写错误导致了问题的出现。
心得体会 :
Ø 仔细检查配置文件 :使用文本编辑器(如 vim )仔细检查配置文件中的每一个参数,确保所有设置都是正确的。
Ø 使用示例配置文件 : YashanDB 提供 了 示例配置文件,使用这些示例配置文件可以避免很多常见的配置错误。
Ø root 密码和用户( yashan )密码不要混淆, hosts 文件是通过 yashan 密码生成的。

重装过程中 安装包会 由于已安装 ,导致安装失败。在多次尝试安装后,我使用 ./bin/yasboot package install -t hosts.toml -i yashandb-personal-23.2.3.100-linux-x86_64.tar.gz --force 命令强制安装成功。
心得体会 :
Ø 在必要时,可以使用--force 选项强制重新安装,覆盖之前的安装文件。

我 还 多次遇到权限不足的问题,特别是在修改系统配置文件或重 装安装包 时 , 执行 这些操作需要 先赋权 。
心得体会 :
Ø 使用sudo 命令 :为了提升权限,可以在命令前添加 sudo ,例如 sudo vi /etc/sysctl.conf 。这样可以确保有足够的权限来修改系统配置文件。
Ø 修改文件权限 :有时需要修改文件的权限以便于访问和修改。使用 chmod 命令可以改变文件权限,例如 chmod 777 ./bin/yasboot 。
Ø 添加用户到相应组 :确保执行安装命令的用户有足够的权限。例如,可以通过命令 usermod -a -G YASDBA yashan 将用户添加到数据库管理员组。

我在 做安装前的准备工作时略过了依赖项准备工作,导致 openssl 低于要求的版本, openssl 版本不匹配会导致安装失败。
心得体会 :
Ø 确认依赖软件版本 :在安装前,使用命令 openssl version 确认当前系统中安装的openssl 版本,并确保其与崖山数据库所需的版本兼容。
Ø 安装指定版本的软件 :如果系统中已有的软件版本不匹配,可以将旧版本重命名并安装新版本。例如, mv /usr/bin/openssl /usr/bin/openssl_old 之后,安装新的openssl 版本。
在 安装 openssl1.1.1l 过程中由于 gcc 编译器缺少,导致安装反复失败
心得体会 :
Ø 缺少编译器等环境工具时,可以前往官网(如阿里云)下载更新环境文件。

安装过程中,我没有及时清理未关闭的进程,导致端口被占用。端口被占用 会导致无法连接到目标IP 或端口,从而影响数据库的安装和部署。
心得体会 :
Ø 确认网络配置 :使用命令 ip a 查看当前网络配置,确保配置文件中的IP 地址与实际网络配置一致。
Ø 检查端口状态 :使用 命令 netstat -anlp|grep 1676 查看端口状态,确保所需端口未被占用且在监听状态。
Ø 检查当前进程: 使用命令 ps -ef l grep yasdb 检查现有进程,关闭无用进程( kill -9 )。
总结:
戒骄戒躁,不要盲目跟风新技术,学习技术要建立在坚实的基础和体系上,要有精通的技术和竞争力,用有限的时间做高效的事,定好学习目标和方向。
在执行命令时,细心检查每一步的执行结果和日志文件是非常重要的。
遇到问题时,不要急于重新开始整个过程,而是通过检查错误信息和配置文件来定位问题并逐一解决,同时深度思考(做对是为什么,为什么会做错,下次不要再犯)。
实在无法解决的时候,要及时向外界寻求帮助,不要闭门造车,要敢于交流分享,交流分享技术很重要,不要让自己成为井底之蛙,很多问题别人也许有特别好的解决办法,也不要怕嘲笑,大家都是过来人。这样不仅能提高效率,还能积累更多的故障排除经验。这些经验,才是完成能力提升的关键。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70040318/viewspace-3023957/ ,如需转载,请注明出处,否则将追究法律责任。