2024-09-03



# 拉取PostGIS的Docker镜像
docker pull kartoza/postgis:latest
 
# 创建并启动一个带有PostGIS的PostgreSQL容器
docker run --name mypostgis -d \
  -e POSTGRES_USER=myuser \
  -e POSTGRES_PASSWORD=mypassword \
  -e POSTGRES_DB=mydatabase \
  -p 5432:5432 \
  -v my_local_directory:/var/lib/postgresql/data \
  kartoza/postgis:latest

这段代码首先通过docker pull命令从Docker Hub拉取最新版本的带有PostGIS的PostgreSQL镜像。然后,使用docker run命令创建并启动了一个名为mypostgis的容器实例,设置了环境变量来定义PostgreSQL用户、密码和数据库名,同时将容器的5432端口映射到宿主机的5432端口,并将宿主机上的my_local_directory目录挂载到容器内的PostgreSQL数据目录下。这样,数据库数据将会被持久化存储在宿主机的指定目录中。

2024-09-03

在CentOS 7上为Tomcat 9.0.87部署SSL证书,你需要按照以下步骤操作:

  1. 获取SSL证书。如果你还没有SSL证书,你需要购买或免费获取一个证书。
  2. 将证书文件放置在Tomcat的conf目录下。
  3. 配置server.xml文件。编辑conf/server.xml,在<Connector>标签中配置SSL相关属性。

下面是一个配置示例:




<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
           maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
           keystoreFile="/path/to/your/keystore.jks" 
           keystorePass="your_keystore_password"
           clientAuth="false" sslProtocol="TLS" />

其中:

  • port 是SSL连接的端口,默认为8443。
  • keystoreFile 是你的keystore文件的路径。
  • keystorePass 是你设置的keystore密码。
  1. 重启Tomcat服务以应用更改。



sudo systemctl restart tomcat

确保你已经将证书及密钥库文件的权限设置为仅有Tomcat用户可读,以保障安全。

注意:具体步骤可能会根据你获取的证书类型(例如:PEM格式)和Tomcat版本有所不同。如果你的证书不是Java Keystore格式,你可能需要使用keytool命令将证书导入到Java Keystore中。

2024-09-03

在CentOS 7上安装Tomcat 10的步骤如下:

  1. 安装Java环境

    Tomcat 10需要Java 11或更高版本。可以使用yum安装OpenJDK 11:




sudo yum install java-11-openjdk-devel
  1. 验证Java安装



java -version
  1. 创建Tomcat用户

    为Tomcat创建一个专用的系统用户,以增加系统的安全性:




sudo useradd -r -m -U -d /opt/tomcat -s /bin/false tomcat
  1. 下载Tomcat

    从官方网站下载Tomcat 10的tar.gz压缩包:




cd /tmp
wget https://dlcdn.apache.org/tomcat/tomcat-10/v10.0.14/bin/apache-tomcat-10.0.14.tar.gz
  1. 解压Tomcat

    将Tomcat解压到/opt/tomcat目录:




sudo tar xf apache-tomcat-10*.tar.gz -C /opt/tomcat
sudo ln -s /opt/tomcat/apache-tomcat-10.0.14 /opt/tomcat/latest
sudo chown -RH tomcat: /opt/tomcat/latest
sudo sh -c 'chmod +x /opt/tomcat/latest/bin/*.sh'
  1. 创建Systemd服务文件

    创建一个systemd服务文件/etc/systemd/system/tomcat.service




sudo tee /etc/systemd/system/tomcat.service <<EOF
[Unit]
Description=Tomcat 10 servlet container
After=network.target
 
[Service]
Type=forking
 
User=tomcat
Group=tomcat
 
Environment="JAVA_HOME=/usr/lib/jvm/java-11-openjdk"
Environment="CATALINA_PID=/opt/tomcat/latest/temp/tomcat.pid"
Environment="CATALINA_HOME=/opt/tomcat/latest"
Environment="CATALINA_BASE=/opt/tomcat/latest"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"
Environment="JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom"
 
ExecStart=/opt/tomcat/latest/bin/startup.sh
ExecStop=/opt/tomcat/latest/bin/shutdown.sh
 
[Install]
WantedBy=multi-user.target
EOF
  1. 启动Tomcat服务

    使用systemctl命令启动Tomcat并设置开机自启:




sudo systemctl daemon-reload
sudo systemctl start tomcat
sudo systemctl enable tomcat
  1. 验证Tomcat安装

    打开你的Web浏览器,访问服务器的IP地址或域名,你应该看到Tomcat的默认欢迎页。

以上步骤安装了Tomcat 10,并通过systemd进行管理,确保了安全性和稳定性。

2024-09-03

安装CentOS 7.9和Oracle 11g RAC (11.2.0.4) 的步骤通常如下:

  1. 下载Oracle 11g RAC安装介质。
  2. 在VMware上创建两个虚拟机,分配足够的资源(CPU、内存、存储等)。
  3. 安装CentOS 7.9操作系统,确保网络配置正确,包括主机名、IP地址、DNS、NTP等。
  4. 配置KVM和网络,确保RAC节点间可以通信。
  5. 设置Oracle用户环境,如ORACLE\_HOME、ORACLE\_SID等。
  6. 安装Oracle Clusterware。
  7. 创建Oracle RAC数据库实例。
  8. 配置Oracle RAC的Data Guard。

以下是一个简化的示例步骤,用于安装Oracle RAC和单节点Data Guard:




# 步骤1:安装CentOS 7.9
# 在VMware上创建两个虚拟机并安装CentOS 7.9
 
# 步骤2:配置网络
# 编辑网络配置文件 /etc/sysconfig/network-scripts/ifcfg-eth0,设置静态IP等
 
# 步骤3:安装Oracle Clusterware
# 下载Oracle Clusterware安装介质
# 解压并运行安装程序
 
# 步骤4:创建Oracle RAC数据库
# 使用dbca创建数据库实例
 
# 步骤5:配置Data Guard
# 使用dbca或者手动方式创建Standby数据库
# 配置Redo Transport
# 配置Standby数据库进行Role Transition

请注意,这只是一个概要步骤,实际安装过程中会涉及到许多细节,包括软件下载、环境变量设置、参数调整、故障排查等。详细步骤和参数配置可以参考Oracle官方文档或者专业的技术支持。

2024-09-03

CentOS 8 安装 Oracle Database 23c 的步骤大致如下:

  1. 下载 Oracle Database 23c 的免费版本。
  2. 配置系统要求,包括安装必要的依赖项和配置内核参数。
  3. 创建 Oracle 用户和组。
  4. 设置环境变量,如 ORACLE_HOME, PATH 等。
  5. 解压下载的 Oracle Database 文件并运行安装脚本。
  6. 配置和启动数据库。

以下是一个简化的安装示例:




# 1. 安装依赖项
sudo dnf install -y oracle-database-preinstall-23c
sudo dnf install -y bc binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33.i686 glibc glibc.i686 glibc-devel ksh libaio libaio.i686 libaio-devel libaio-devel.i686 libgcc libgcc.i686 libnsl libnsl.i686 libstdc++ libstdc++.i686 libstdc++-devel libXi libXi.i686 libXtst libXtst.i686 make sysstat
 
# 2. 创建 Oracle 用户和设置权限
sudo useradd -g oinstall -G dba -d /home/oracle oracle
sudo passwd oracle
sudo mkdir -p /u01/app/oracle
sudo chown -R oracle:oinstall /u01
sudo chmod -R 775 /u01
 
# 3. 设置环境变量
echo "export ORACLE_HOME=/u01/app/oracle/product/23c/dbhome_1" >> ~oracle/.bash_profile
echo "export PATH=\$PATH:\$ORACLE_HOME/bin" >> ~oracle/.bash_profile
echo "export NLS_LANG=AMERICAN_AMERICA.AL32UTF8" >> ~oracle/.bash_profile
source ~oracle/.bash_profile
 
# 4. 以 oracle 用户登录并解压安装文件
su - oracle
cd /path/to/oracle/software
unzip LINUX.X64_230000_db_home.zip
 
# 5. 运行安装脚本
cd /path/to/oracle/software/dbhome_1/
./runInstaller
 
# 6. 安装完成后,执行脚本
cd $ORACLE_HOME/oui/bin
./runInstaller -updateAllDBConsole -silent ORACLE_HOSTNAME=your_hostname
 
# 7. 之后配置和启动数据库

请注意,以上命令和脚本仅为示例,实际安装时需要根据您下载的 Oracle 数据库安装文件和您的系统环境进行相应的调整。在执行安装之前,请确保您已经遵循了 Oracle 官方文档中关于系统要求和预安装步骤的指导。

2024-09-03

在CentOS 7上安装Oracle 12c的步骤如下:

  1. 系统要求:

    • 至少2GB的物理内存
    • 至少40GB的空间
  2. 安装依赖项和配置系统:

    
    
    
    sudo yum install -y binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33.i686 \
    gcc gcc-c++ glibc glibc.i686 glibc-devel glibc-devel.i686 ksh libaio libaio.i686 \
    libaio-devel libaio-devel.i686 libgcc libgcc.i686 libstdc++ libstdc++.i686 \
    libstdc++-devel make sysstat
     
    sudo yum install -y xorg-x11-utils xorg-x11-xauth
     
    sudo yum install -y fontconfig-devel
     
    sudo yum install -y libXft libXft.i686 libXfont libXfont.i686 libXi libXi.i686 \
    libXtst libXtst.i686 libXrender libXrender.i686
     
    sudo yum install -y compat-libstdc++-33.i686
     
    sudo yum install -y libaio-devel-0.3.109-13.el7.i686
  3. 创建Oracle用户和组:

    
    
    
    sudo groupadd -g 54321 oinstall
    sudo groupadd -g 54322 dba
    sudo groupadd -g 54323 oper
    sudo groupadd -g 54324 backupdba
    sudo groupadd -g 54325 dgdba
    sudo groupadd -g 54326 kmdba
    sudo groupadd -g 54327 asmdba
    sudo groupadd -g 54328 asmoper
    sudo groupadd -g 54329 asmadmin
     
    sudo useradd -u 54321 -g oinstall -G dba,oper,backupdba,dgdba,kmdba,asmdba oracle
  4. 配置内核参数和用户限制,编辑或添加以下行到 /etc/sysctl.conf/etc/security/limits.conf

    
    
    
    # /etc/sysctl.conf
    fs.aio-max-nr = 1048576
    fs.file-max = 6815744
    kernel.shmall = 2097152
    kernel.shmmax = 1073741824
    kernel.shmmni = 4096
    kernel.sem = 250 32000 100 128
    net.ipv4.ip_local_port_range = 9000 65500
    net.core.rmem_default = 262144
    net.core.rmem_max = 4194304
    net.core.wmem_default = 262144
    net.core.wmem_max = 1048576
     
    # /etc/security/limits.conf
    oracle soft nproc 2047
    oracle hard nproc 16384
    oracle soft nofile 1024
    oracle hard nofile 65536
    oracle soft stack 10240
  5. 应用内核参数更改:

    
    
    
    sudo sysctl -p
  6. 创建目录并设置权限:

    
    
    
    sudo mkdir -p /u01/app/ora
2024-09-03

在CentOS 7上安装Apache Tomcat 8,可以通过以下步骤进行:

  1. 安装Java环境

    Tomcat需要Java环境,所以首先需要安装Java。




sudo yum install java-1.8.0-openjdk-devel
  1. 添加Tomcat用户

    为Tomcat创建一个专用的系统用户。




sudo useradd -r -m -U -d /opt/tomcat -s /bin/false tomcat
  1. 下载Tomcat

    从官方网站下载Tomcat压缩包。




cd /tmp
wget https://downloads.apache.org/tomcat/tomcat-8/v8.5.73/bin/apache-tomcat-8.5.73.tar.gz
  1. 解压Tomcat

    将Tomcat解压到/opt/tomcat目录。




sudo tar xf apache-tomcat-*tar.gz -C /opt/tomcat --strip-components=1
  1. 设置权限

    更改/opt/tomcat目录及其内容的所有者和组。




cd /opt/tomcat
sudo chown -R tomcat: /opt/tomcat
  1. 创建服务文件

    创建一个systemd服务文件以管理Tomcat服务。




sudo nano /etc/systemd/system/tomcat.service

添加以下内容:




[Unit]
Description=Tomcat 8 servlet container
After=network.target
 
[Service]
Type=forking
 
User=tomcat
Group=tomcat
 
Environment="JAVA_HOME=/usr/lib/jvm/jre"
Environment="CATALINA_PID=/opt/tomcat/temp/tomcat.pid"
Environment="CATALINA_HOME=/opt/tomcat"
Environment="CATALINA_BASE=/opt/tomcat"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"
Environment="JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom"
 
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
 
[Install]
WantedBy=multi-user.target
  1. 启动Tomcat服务

    启动Tomcat服务并设置开机自启。




sudo systemctl daemon-reload
sudo systemctl start tomcat
sudo systemctl enable tomcat
  1. 检查Tomcat状态

    检查Tomcat服务的状态。




sudo systemctl status tomcat

如果一切顺利,Tomcat将启动并运行,你可以通过浏览器访问http://your_server_ip:8080来验证安装。

2024-09-03

在CentOS 7上安装Java 17,您可以使用以下步骤:

  1. 首先,下载OpenJDK 17的.tar.gz安装包。您可以从OpenJDK官网或者Azul的官网下载。
  2. 接下来,解压缩下载的文件,并将其移动到/usr/lib/jvm/目录下。
  3. 配置环境变量,以便系统知道Java 17的安装位置。

以下是具体的命令:




# 下载OpenJDK 17 (以Azul的Zulu Build为例)
wget https://cdn.azul.com/zulu/bin/zulu17.38.15-ca-jdk17.0.1-linux_x64.tar.gz
 
# 解压缩
tar -xvf zulu17.38.15-ca-jdk17.0.1-linux_x64.tar.gz
 
# 移动到/usr/lib/jvm/目录
sudo mv zulu17.38.15-ca-jdk17.0.1-linux_x64 /usr/lib/jvm/zulu-17.0.1
 
# 配置环境变量
echo 'export JAVA_HOME=/usr/lib/jvm/zulu-17.0.1' | sudo tee -a /etc/profile
echo 'export JAVA_DEHOME=/usr/lib/jvm/zulu-17.0.1' | sudo tee -a /etc/profile
echo 'export PATH=$PATH:$JAVA_HOME/bin' | sudo tee -a /etc/profile
 
# 更新环境变量
source /etc/profile
 
# 验证安装
java -version

执行上述命令后,您应该能看到Java 17已经成功安装并配置。

2024-09-03



# 安装PostgreSQL 14
sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
sudo yum install -y postgresql14-server
sudo /usr/pgsql-14/bin/postgresql-14-setup initdb
sudo systemctl enable postgresql-14
sudo systemctl start postgresql-14
 
# 查看PostgreSQL 14服务状态
sudo systemctl status postgresql-14
 
# 登录到PostgreSQL 14
sudo -i -u postgres
psql
 
# 卸载PostgreSQL 14
sudo systemctl stop postgresql-14
sudo systemctl disable postgresql-14
sudo yum remove -y postgresql14-server
sudo rm -rf /var/lib/pgsql/14/data/
sudo yum remove -y pgdg-redhat-repo-latest.noarch

这段代码提供了在CentOS 7上安装和卸载PostgreSQL 14的步骤。安装时,它会先添加PostgreSQL的YUM仓库,然后安装PostgreSQL 14服务器软件,初始化数据库,并启动服务。卸载时,它会停止服务,禁用自启动,然后移除软件,并清理数据目录。

2024-09-03

解决Linux - Centos 7 - 关于Tomcat无故自动退出关闭服务问题,需要检查Tomcat日志文件,通常位于Tomcat安装目录/logs下的catalina.out

  1. 检查catalina.out日志文件:

    • 使用tail命令查看最后几行日志:

      
      
      
      tail -n 100 catalina.out
    • 如果日志文件中没有错误信息,可以查看系统日志/var/log/messages或使用journalctl查看最近的系统日志:

      
      
      
      journalctl -u tomcat
  2. 解决问题:

    • 如果日志中有明显的错误信息,如内存不足(OutOfMemoryError)、权限问题、配置错误等,根据错误信息进行相应的修复。
    • 如果是权限问题,确保Tomcat进程有足够的权限来访问所需的文件和目录。
    • 如果是配置问题,检查server.xml等配置文件,确保没有配置错误。
    • 如果是资源不足,考虑增加内存或调整JVM参数。
  3. 防止自动退出:

    • 如果是外部因素导致的自动退出(如系统重启),可以考虑设置自启动选项,确保Tomcat随系统启动。
    • 对于开发环境,可以设置CATALINA_OPTSJAVA_OPTS环境变量,增加调试信息和堆栈跟踪。
  4. 进一步诊断:

    • 使用ps命令检查Tomcat进程是否还在运行:

      
      
      
      ps -ef | grep tomcat
    • 如果进程不存在,可以尝试手动启动Tomcat,观察启动日志中是否有新的错误信息。
  5. 如果以上步骤无法解决问题,可以考虑重新安装Tomcat,或者升级到最新稳定版本。

确保在每次修改配置或代码后重启Tomcat,以验证问题是否得到解决。