Ubuntu服务器安装图形化界面

1. 前言

最近在阿里云上创建云主机, 主要是需要使用浏览某些网站, 说实在的我只需要浏览器就够用了, 但是无奈阿里云提供了桌面的镜像只有Windows的几个版本.
而使用windows得镜像要比Linux得镜像贵好几倍, 一来是服务器硬件资源要求较Linux高, 而来Windows镜像都是需要License费用或者额外购买License的.
于是考虑在创建Linux云主机后, 安装一个Linux桌面系统, 果然让我实验成功了, 特写此文, 以防遗忘, 另外给后来人以方便.

阅读更多

Msys2安装教程

1. 前言

之前一直是使用的Cygwin作为命令行终端, 后来好像是因为Cygwin上的git不兼容还是什么原因, 具体记不太清了, 就安装了git for windows后来终端也就切换到了git bash, 使用了很长一段时间, 后面发现git for window安装不了额外的软件, 使用完整的Linux命令行都是在虚拟机上完成的, 也就一直这样别扭的用着. 今天发现一个可用在windows上使用bash并可以安装额外软件包的方法,特地写文章纪念一下.

阅读更多

安装并配置docker

1. 什么是Docker容器?

Docker是一种轻量级的虚拟化技术,同时是一个开源的应用容器运行环境搭建平台,可以让开发者以便捷方式打包应用到一个可移植的容器中,然后安装至任何运行Linux或Windows等系统的服务器上。相较于传统虚拟机,Docker容器提供轻量化的虚拟化方式、安装便捷、启停速度快。

本文主要讲述如何在Centos 7.9操作系统上安装Docker, 当然本教程也适合RHEL系列的其他Linux发型版本.

阅读更多

Redhat系列yum源介绍

CentOS 默认自带 CentOS-Base.repo 源,但官方源中去除了很多有版权争议的软件,而且安装的软件也不是最新的稳定版。 Fedora 自带的源中也找不到很多多媒体软件,如果需要安装,必需先添加其他源,如 RPMFusion 和 RPMForge 等第三方软件库。

下面鹏叔来一一介绍各种第三方软件库,以下软件库适用于与 RHEL 完全兼容的 linux 发行版

阅读更多

使用WireGuard内网穿透

1. 前言

WireGuard 是由 Jason Donenfeld 等人用 C 语言编写的一个开源 威屁恩 协议,被视为下一代 威屁恩 协议,旨在解决许多困扰 IPSec/IKEv2、Open威屁恩 或 L2TP 等其他 威屁恩 协议的问题。它与 Tinc 和 MeshBird 等现代 威屁恩 产品有一些相似之处,即加密技术先进、配置简单。从 2020 年 1 月开始,它已经并入了 Linux 内核的 5.6 版本,这意味着大多数 Linux 发行版的用户将拥有一个开箱即用的 WireGuard。

阅读更多

PostgreSQL备份与恢复

1. 前言

数据库的备份有多种分类方式。

  1. 按照备份后的文件类型,可以分为物理备份(文件系统级别的备份)和逻辑备份(备份后的文件是sql文件或特定格式的导出文件);
  2. 按照备份过程中是否停止数据库服务,可分为冷备份(备份过程中停止数据库服务)和热备份(备份过程中数据库服务开启并可供用户访问);
  3. 按照备份是否是完整的数据库,可分为全量备份(备份是完整的数据库)和增量备份(备份是上一次全量备份后数据库改变的内容)。

Postgresql的常见备份方式有以下三种:文件系统级别的冷备份, SQL转储, 连续归档.

阅读更多

自己动手写一个Mysql到PostgreSQL数据库迁移工具

1. 前言

这段时间在进行 Mysql 到 PostgreSQL 数据库迁移工作.

主要包含三部分工作, 其一是构建数据库对象, 包括表, 视图, 存储过程的构建, 这部分由于我在项目早期就引入了 liquibase, 所以迁移工作很简单, 所以没有总结文章.

其二是代码修改, 让代码适配新的数据库, 这部分已经总结发布到了鹏叔的技术博客 - 从 Mariadb 迁移到 postgresql.

其三是数据迁移, 数据迁移也有一些现成的工具, 但是配置起来比较麻烦, 工具比想象中的复杂太多, 用起来也不是太顺手, 与其花时间在熟悉一次性的工具上, 不如自己写一个迁移工具. 于是就有了这篇文章.

阅读更多

基于 Code-server 快速部署自己的云开发环境

1. 前言

Web IDE,顾名思义就是云端开发环境,把 IDE 部署在云上。打开浏览器,连上云 IDE,就可以方便敲代码跑程序。想象一下,带上一台 iPad 或者华为、小米平板,配上蓝牙键盘,坐在阴凉下,或者沙滩上,吹着海风,面朝大海敲代码,多么惬意。

其实 Web IDE 很早就有,但那些都只能说是玩具,直到现在才有一些不错的产品推出,比如微软和 Github 的 Visual Studio Codespaces、coding.net 的 Cloud Studio、华为云 CloudIDE 等。不过,这些产品要么还在测试,要么免费用会有限制或者价格不菲,目前还不是非常方便。

如果想要低成本愉快地使用,自己动手搭建是一个不错的方案。对配置要求不高的话,一年几十块一百多块就能买到廉价的 VPS 或者云主机就足够了。

自己DIY 一套Web IDE 比较成熟的方案有两个,code-server 和 Theia。毕竟 code-server 是基于VS code魔改的,与vs code的插件体系兼容性更好。所以更推荐code-server。Theia虽然有自己的插件体系,也宣称兼容vs code的插件,也是一套优秀的WEB IDE解决方案,但是兼容程度谁知道呢?

阅读更多

PostgreSQL高级篇

1. PG简介

PostgreSQL是一个免费的对象-关系型数据库服务器(ORDBMS), 在灵活的BSD许可证下发行.
PostgreSQL开发者把它念作post-gress-Q-L.
PostgreSQL的Slogan是世界上最先进的开源关系型数据库.
开源界的Oracle, 去O首选

阅读更多

Centos7上安装MariaDB

1. 安装

1.1. 检查是否已安装 mariadb

1
yum list installed | grep mariadb

1.2. 安装MariaDB

如果未安装,执行以下命令安装命令

1
yum -y install mariadb mariadb-server
阅读更多

Linux上安装PostgreSQL

1. 前言

本文以PostgreSQL 15 为例讲解如何在linux上安装PostgreSQL。

1.1. 本文主要内容

  • PostgreSQL 15 安装(yum)
  • PostgreSQL 15 基础配置
  • PostgreSQL 15 远程访问配置
  • PostgreSQL 基础管理
阅读更多

PostgreSQL基础

1. 数据库基础知识

1.1. 什么是数据库

数据库(Database, DB)是一个长期存储在计算机内的, 有组织的, 有共享的, 统一管理的数据集合.

  • 保管数据的”仓库”
  • 数据管理的方法和技术
阅读更多

CentOS7搭建NAS文件共享存储

1. 前言

1.1. 网络存储技术

网络存储技术大概可以分为3种:

  • DAS:直连式存储(Direct Attached Storage),直接与主机相连的存储设备。它依赖于服务器,本身是硬件的堆叠,不带有任何存储操作系统。现在常见的DAS设备:硬盘座带上 N个硬盘。

  • NAS:网络连接式存储(Network Attached Storage),存储设备直连网络,NAS设备和DAS设备不同在于,NAS设备一般带有存储操作系统。

  • SAN:存储网络(Storage Area Network),可以说是一种网络基础设施。SAN和NAS的区别主要在于:SAN针对海量、面向数据块的数据传输,而NAS则提供文件级的数据访问功能。

阅读更多