Próbowałem COUNT(*)uzyskać tabelę ze 150 000 wierszy z kluczem podstawowym. Narzędzie to trwa około 5 minut, więc zorientowałem się, że jest to problem z indeksowaniem. Powołując się na instrukcję PostgreSQL : REINDEX jest podobny do upuszczania i ponownego tworzenia indeksu, ponieważ zawartość indeksu jest odbudowywana od zera. Jednak względy blokowania …
W dokumentacji PostgreSQL dla Ograniczeń jest napisane Ograniczenie niepuste jest funkcjonalnie równoważne z utworzeniem ograniczenia sprawdzającego CHECK (column_name IS NOT NULL), ale w PostgreSQL tworzenie wyraźnego ograniczenia niepustego jest bardziej wydajne. zastanawiam się Co dokładnie oznacza „bardziej wydajny”? Jakie są niekorzystne skutki używania CHECK (column_name IS NOT NULL)zamiast SET NOT …
Biorąc pod uwagę tę konfigurację w aktualnym Postgres 9.4 ( z tego powiązanego pytania ): CREATE TABLE foo (ts, foo) AS VALUES (1, 'A') -- int, text , (7, 'B'); CREATE TABLE bar (ts, bar) AS VALUES (3, 'C') , (5, 'D') , (9, 'E'); Istnieje również SQL Fiddle z …
Mam wiele serwerów PostgreSQL dla aplikacji sieci web. Zazwyczaj jeden master i wiele slave'ów w trybie czuwania na gorąco (asynchroniczna replikacja strumieniowa). Używam PGBouncer do łączenia pul: jedna instancja jest instalowana na każdym serwerze PG (port 6432) łączącym się z bazą danych na localhost. Używam trybu puli transakcji. Aby zrównoważyć …
Mam bazę danych PostgreSQL działającą na serwerze, którego strefa czasowa jest ustawiona na strefę czasową Indii (tj. UTC +5: 30) Mam pewne dane w tabeli, która jest tworzona w następujący sposób: CREATE TABLE "CLOUDDATA" ( "CD_Tm_Obs" timestamp without time zone, "CD_Avg_Cloud" double precision ) Chcę zapytać o dane i uzyskać …
Mam tabelę Postgres z ~ 2,1 miliona wierszy. Uruchomiłem na nim poniższą aktualizację: WITH stops AS ( SELECT id, rank() OVER (ORDER BY offense_timestamp, defendant_dl, offense_street_number, offense_street_name) AS stop FROM consistent.master WHERE citing_jurisdiction=1 ) UPDATE consistent.master SET arrest_id=stops.stop FROM stops WHERE master.id = stops.id; Uruchomienie tego zapytania zajęło 39 godzin. …
W mojej aplikacji (po stronie klienta) ustawiłem limit czasu połączenia i poleceń na 10 minut. Następnie moja aplikacja uruchamia proste zapytanie: SELECT pg_sleep(65) Na niektórych serwerach działa dobrze, ale inne serwery zamykają połączenie po 60 sekundach. Czy może to być jakaś konfiguracja serwera PostgreSQL, która ogranicza limity czasu i ignoruje …
Muszę zduplikować istniejącą bazę danych, w tym jej schemat i strukturę, do innej nowej bazy danych. Potrzebuję tego w środowisku poleceń powłoki, a nie w pgadmin. Proszę mi pomóc. nohup pg_dump exampledb > example-01.sql createdb -O postgres exampledbclone_01 mój użytkownik to „postgres” nohup psql exampledbclone_01 < example-01.sql $ pg_dump mydb …
Mam dwa stoliki employeei phones. Pracownik może mieć od 0 do n numerów telefonów. Chcę wymienić nazwiska pracowników wraz z ich numerami telefonów. Korzystam z poniższego zapytania, które działa poprawnie. SELECT empname,array_agg(phonenumber) AS phonenumbers FROM employee LEFT OUTER JOIN phones ON employee.empid = phones.empid GROUP BY employee.empid Tabela pracowników może …
Zamknięte. To pytanie jest nie na temat . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby było ono tematem dotyczącym wymiany stosu administratorów bazy danych. Zamknięte 4 lata temu . Planuję wkrótce mieć bardzo mocno załadowane bazy danych postgresql. Mam trochę doświadczenia w zarządzaniu bazami danych mysql …
Biorąc pod uwagę rolę bazy danych, user1funkcja something()zdefiniowana jako procedura składowana i widok utworzony jak: CREATE VIEW view1 AS select * from something() I biorąc pod uwagę te uprawnienia: REVOKE ALL ON FUNCTION something FROM user1 REVOKE SELECT ON view1 FROM user1 Po uruchomieniu SELECT * FROM view1pojawia się błąd …
Dlaczego x IS NOT NULLnie jest równy NOT x IS NULL? Ten kod: CREATE TABLE bug_test ( id int, name text ); INSERT INTO bug_test VALUES (1, NULL); DO $$ DECLARE v_bug_test bug_test; BEGIN RAISE NOTICE '%: %', v_bug_test, (v_bug_test IS NULL); RAISE NOTICE '%: %', v_bug_test, (v_bug_test IS NOT …
Obsługa PostgreSQL CREATE TABLE ASi SELECT INTOkiedy korzystać z obu? CREATE TABLE AS - zdefiniuj nową tabelę na podstawie wyników zapytania CREATE TABLE AStworzy tabelę i wypełnia ją danymi obliczonymi przez SELECTpolecenie. Kolumny tabeli mają nazwy i typy danych powiązane z kolumnami wyjściowymi SELECT(z wyjątkiem tego, że można zastąpić nazwy …
Kontekst Projektuję bazę danych (na PostgreSQL 9.6), która będzie przechowywać dane z aplikacji rozproszonej. Ze względu na rozproszony charakter aplikacji, nie mogę używać liczb całkowitych z automatycznym przyrostem ( SERIAL) jako mojego klucza głównego ze względu na potencjalne warunki wyścigu. Naturalnym rozwiązaniem jest użycie UUID lub globalnie unikalnego identyfikatora. Postgres …
W Postgres 9.5 byłem zaskoczony widząc wynik widoczny poniżej podczas eksperymentowania z rokiem 0001(bez roku zero 0000). Przesunięcie -07:52:58? Niektóre przykładowy kod. Zauważ, że użyłem mieszanego TIMESTAMP WITH TIME ZONEi TIMESTAMP WITHOUT TIME ZONE, więc przeczytaj uważnie. SET TIME ZONE 'America/Los_Angeles' ; SELECT (TIMESTAMP WITH TIME ZONE '2015-01-01 00:00:00.0', TIMESTAMP …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.