首页主机资讯jellyfin在centos的数据库连接

jellyfin在centos的数据库连接

时间2025-10-22 15:49:04发布访客分类主机资讯浏览406
导读:Jellyfin在CentOS上的数据库连接配置指南 Jellyfin支持SQLite(默认)、MySQL、PostgreSQL三种数据库类型。其中,SQLite适合单机小规模使用,MySQL/PostgreSQL适合多用户或需要更强大功能...

Jellyfin在CentOS上的数据库连接配置指南

Jellyfin支持SQLite(默认)、MySQL、PostgreSQL三种数据库类型。其中,SQLite适合单机小规模使用,MySQL/PostgreSQL适合多用户或需要更强大功能的场景。以下是具体配置步骤及注意事项:

一、准备工作

  1. 安装Jellyfin
    通过YUM包管理器安装Jellyfin(需提前添加官方repo):

    sudo yum install -y epel-release
    wget https://repo.jellyfin.org/releases/server/centos/stable/server/jellyfin-server-10.8.9-1.el7.x86_64.rpm
    rpm -Uvh jellyfin-server-10.8.9-1.el7.x86_64.rpm
    sudo systemctl enable --now jellyfin
    
  2. 安装数据库软件

    • MySQL
      sudo yum install -y mysql-server
      sudo systemctl enable --now mysqld
      
    • PostgreSQL
      sudo yum install -y postgresql-server
      sudo postgresql-setup --initdb --unit postgresql
      sudo systemctl enable --now postgresql
      
  3. 创建数据库与用户

    • MySQL
      登录MySQL(默认root密码在安装时提示),执行以下命令:
      CREATE DATABASE jellyfin CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
          
      CREATE USER 'jellyfin'@'localhost' IDENTIFIED BY 'YourStrongPassword';
          
      GRANT ALL PRIVILEGES ON jellyfin.* TO 'jellyfin'@'localhost';
          
      FLUSH PRIVILEGES;
          
      
    • PostgreSQL
      切换至postgres用户,执行以下命令:
      sudo -u postgres psql
      CREATE DATABASE jellyfin OWNER jellyfin;
          
      CREATE USER jellyfin WITH PASSWORD 'YourStrongPassword';
          
      GRANT ALL PRIVILEGES ON DATABASE jellyfin TO jellyfin;
      
      \q
      

二、配置Jellyfin使用数据库

Jellyfin的数据库配置文件路径为/etc/jellyfin/config/config.db.json(若文件不存在,首次启动后会自动生成SQLite配置)。
使用文本编辑器(如nano)修改配置:

sudo nano /etc/jellyfin/config/config.db.json
  • MySQL配置示例

    {
    
      "Database": {
    
        "Engine": "mysql",
        "Host": "localhost",
        "Port": 3306,
        "DatabaseName": "jellyfin",
        "Username": "jellyfin",
        "Password": "YourStrongPassword"
      }
    
    }
    
    
  • PostgreSQL配置示例

    {
    
      "Database": {
    
        "Engine": "postgresql",
        "Host": "localhost",
        "Port": 5432,
        "DatabaseName": "jellyfin",
        "Username": "jellyfin",
        "Password": "YourStrongPassword"
      }
    
    }
        
    
  • SQLite配置(默认)
    若无需更换数据库,无需修改此文件,Jellyfin会自动创建/var/lib/jellyfin/database.db

三、验证配置

  1. 重启Jellyfin服务

    sudo systemctl restart jellyfin
    
  2. 检查服务状态

    sudo systemctl status jellyfin
    

    若状态显示为active (running),说明配置成功。

  3. 查看日志确认数据库连接

    journalctl -u jellyfin -f
    

    日志中应无数据库连接错误(如Unable to connect to database)。

四、常见问题排查

  1. 数据库服务未启动
    若出现Connection refused错误,检查数据库服务是否运行:

    sudo systemctl status mysqld  # MySQL
    sudo systemctl status postgresql  # PostgreSQL
    

    若未运行,启动服务:sudo systemctl start mysqld

  2. 连接字符串错误
    确认config.db.json中的HostPortDatabaseNameUsernamePassword与数据库实际配置一致。例如,MySQL默认端口为3306,PostgreSQL为5432。

  3. 用户权限不足
    若出现Access denied错误,检查数据库用户是否有对应数据库的权限:

    • MySQLSHOW GRANTS FOR 'jellyfin'@'localhost';
    • PostgreSQL\du jellyfin(在psql中执行)
  4. 防火墙拦截
    若数据库不在本地(如远程数据库),需开放对应端口:

    sudo firewall-cmd --permanent --add-port=3306/tcp  # MySQL
    sudo firewall-cmd --permanent --add-port=5432/tcp  # PostgreSQL
    sudo firewall-cmd --reload
    

五、注意事项

  • 数据迁移:若从SQLite切换至MySQL/PostgreSQL,需导出旧数据(通过Jellyfin Web界面的“维护”→“备份”功能)。
  • 性能优化:对于大规模媒体库,建议使用InnoDB引擎(MySQL)或调整PostgreSQL的shared_buffers参数。
  • 备份配置文件:修改配置前备份原文件:sudo cp /etc/jellyfin/config/config.db.json /etc/jellyfin/config/config.db.json.bak

通过以上步骤,即可在CentOS上完成Jellyfin的数据库连接配置。如需进一步优化,可参考Jellyfin官方文档的数据库配置章节。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: jellyfin在centos的数据库连接
本文地址: https://pptw.com/jishu/732390.html
jellyfin在centos的防火墙配置 jellyfin在centos的日志查看

游客 回复需填写必要信息