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

Postgresql AWS 上缺少用户数据库?

Jim Rogers 2月前

112 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)
  • 我会找到一种最简单的解决方案,即通过 php 函数直接翻译日期(不使用 str_replace、日期名称数组和 mktime。目前我使用日期名称表并用数字替换日期...

    我会找到一种最简单的解决方案,即通过 php 函数直接翻译日期(不使用 str_replace、日期名称数组和 mktime)。

    目前我使用日期名称表并用表的值替换数字日期。

    在这个例子中,我检索了月份名称。

    setlocale(LC_TIME, 'fr_FR');
    date_default_timezone_set('Europe/Paris');
    for ($x = $currentMonth; $x < $currentMonth + 12; $x++) {
        $months[] = date('Y-F-m', mktime(0, 0, 0, $x, 1));
    }
    $FrenchMonth = array('Janvier','Février','Mars','Avril','Mai','Juin','Juillet','Août','Septembre','Octobre','Novembre','Décembre');
    $EnglishMonth = array('January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December');
    

    之后我将每个月(\'F\'日期格式)转换为我的当地语言

    $twelvemonthsdata = explode('-',$months[$i]);
    $twelvemonthsM = $twelvemonthsdata[1];
    $twelveFormatMonth = 'F';
    $twelvemonthinfrench = str_replace( $EnglishMonth,$FrenchMonth, date($twelveFormatMonth, strtotime($twelvemonthsM)));
    

    并使用 strtotime() DateTime() 之外,我找不到任何其他方法 intldateformatter() .

    $currentMonth =  Date('m');
    
    for ($x = $currentMonth; $x < $currentMonth + 12; $x++) {
        $eachmonth = strtotime(Date('Y-F-m', mktime(0, 0, 0, $x, 1)));
    
        $tweelvemonths = new DateTime();
        $tweelvemonths->setTimestamp($eachmonth);
    
        $tweelvemonths_formatter = new IntlDateFormatter('fr_FR');
        $tweelvemonths_formatter->setTimeZone('Europe/Paris');
        $tweelvemonths_formatter->setPattern('y-MMMM-MM');
        
        $tweelvemonths_formated = $tweelvemonths_formatter->format($tweelvemonths);
        var_dump($tweelvemonths_formated);
    }
    

    是否有更简单或更短的方法使用或不使用 strtotime 和/或 mtkime 来使用当地语言从当前月份生成未来 12 个月?

返回
作者最近主题: