8wDlpd.png
8wDFp9.png
8wDEOx.png
8wDMfH.png
8wDKte.png

Postgresql AWS 上缺少用户数据库?

Jim Rogers 2月前

101 0

为什么我的测试用户数据库经常丢失?我会让我的 AWS 实例在夜间停止运行,然后在早上重新启动它。但是我无法使用我的 jdtest 用户帐户登录!我不断收到

为什么我的测试用户数据库经常丢失?

我会让 AWS 实例停止一夜,然后在早上重新启动它。但是,我无法使用我的 jdtest 用户帐户登录!

我的系统日志中不断出现以下内容

/var/lib/postgresql/log/postgresql-16-main.log

 LOG:  starting PostgreSQL 16.3 (Ubuntu 16.3-0ubuntu0.24.04.1) on x86_64-pc-linux-gnu, compiled by gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0, 64-bit
 LOG:  listening on IPv4 address "0.0.0.0", port 5432
 LOG:  listening on IPv6 address "::", port 5432
 LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
 LOG:  database system was shut down at 2024-06-06 15:42:30 UTC
 LOG:  database system is ready to accept connections
 jdtest@jdtest FATAL:  database "jdtest" does not exist
 jdtest@jdtest FATAL:  database "jdtest" does not exist

我能解决这个问题的唯一方法是重新发布:

CREATE USER jdtest createdb login PASSWORD 'jdtest' ;
CREATE DATABASE jdtest owner jdtest;
GRANT ALL PRIVILEGES ON DATABASE jdtest TO jdtest;

但同样的问题不断发生。:-(

默认 AWS 实例中是否存在某种非永久性,而我作为新手却没有注意到?我是否应该创建某种(更永久的??)AWS 数据存储和关联的 postgres tbs?

笔记:

  • 问题在夜间发生。我不确定是否有必要关闭实例来重现该问题。
  • 已安装的 postgresql 包是 AWS Ubuntu 实例自带的默认包。
  • 我没有使用 AWS RDS。
  • 日志中 DROP DATABASE 没有
  • 整个实例和其所有内容都只是用于学习目的的测试设置。
帖子版权声明 1、本帖标题:Postgresql AWS 上缺少用户数据库?
    本站网址:http://xjnalaquan.com/
2、本网站的资源部分来源于网络,如有侵权,请联系站长进行删除处理。
3、会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。
4、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
5、站长邮箱:yeweds@126.com 除非注明,本帖由Jim Rogers在本站《ubuntu》版块原创发布, 转载请注明出处!
最新回复 (0)
  • 经过整整两天的寻找答案,我决定问一下!;)我从各种“堆栈溢出”来源中拼凑了一个脚本,该脚本将从多文件压缩中提取特定的 csv 文件

    经过整整两天寻找答案之后,我决定提问!;)

    我从各种“stack overflow”来源拼凑了一个脚本,该脚本每天将来自 gmail 的多文件压缩附件中的特定 csv 文件拉入 gsheets。

    问题:

    1. p4

    2. p5

    除了创建一个脚本,要求我运行 12 次不同的时间以便将所有 12 个压缩文件收集到各自的选项卡上之外,我还能做什么?

    这是脚本的副本。问题出现在“步骤 4:解析 CSV 数据”中。

    function NewBNP() {
    
    var ss = SpreadsheetApp.getActive()
    var spreadsheet = SpreadsheetApp.getActive();
    spreadsheet.setActiveSheet(spreadsheet.getSheetByName('RawBNP'), true);
    var cell = spreadsheet.getRange('A1')
    var cellContent = cell.getValue()
    
    if(cellContent === 'RUN') 
    
    
    {
    
    //Step1: GET MOST RECENT MESSAGE BY LABEL
    var threads = GmailApp.search("Standard - CFL REP001");
    var message = threads[0].getMessages();
    message = message[message.length - 1];
    var attachments = message.getAttachments();
    
    Logger.log("Message Found");
    var attachments = message.getAttachments();
    for (var i = 0; i < attachments.length; i++) {
    var attachment = attachments[i];
    }
    Logger.log("Attachement Stored");
    
    
    //Step 2: FIND SPREADHSEET
    var ss = SpreadsheetApp.openById ("16xx4y899tRWNfCZIARw4wDmuqUcMtjB2ZZlznjaeaUc");
    Logger.log("Sheet Opened");
    
    //Step 3: FIND SHEET INSIDE SPREADHSEET
    var sheetName = ss.getSheetByName("RawBNP");
    Logger.log("Tab Found");
    
    
    //Step 4: PARSE CSV DATA
    var blobs = Utilities.unzip(attachment.setContentType(MimeType.ZIP)); 
    if (blobs.length <= 1) {
    throw new Error("Multiple files cannot be found.");
    }
    var csvFileOf11thFile = blobs[11];
    
    var csvData = Utilities.parseCsv(csvFileOf11thFile.getDataAsString('ISO-8859-1'), ",");
    Logger.log("CSV data loaded");
    
    
    //Step 5: SINSERT DATA AKA .getRange(row, column, lastrow based on CSV data);
    sheetName.getRange(3, 2, csvData.length,csvData[0].length).setValues(csvData);
    Logger.log("Data pasted");
    
    
    }
    }
    
返回
作者最近主题: