ReindEx Postgres

ReindEx Postgres
Come molti comandi del database PostgreSQL, il comando ReinDex arriva molto facilmente quando si tratta di aggiornare il sistema di database. È stato formato per ricreare l'indice già fatto del tuo database. Potrebbero verificarsi alcune situazioni in cui ci sono problemi con i dati del database a causa di problemi di software e hardware. Questi problemi possono portare a dati non validi nel database e le viste non possono recuperare i record richiesti. Questo è il momento di recuperare le nostre viste già fatte per usarle di nuovo usando l'istruzione ReinDex. Questo articolo discuterà il metodo per aggiornare gli indici già realizzati nel database PostgreSQL.

Usando PostgreSQL PGADMIN GUI:

Prendiamo un nuovo inizio dalla nostra schermata desktop di Windows 10. Assicurati che il tuo Windows 10 abbia già un database PostgreSQL configurato completamente per utilizzarlo. Per aprire la GUI del database PostgreSQL, tocca la barra di ricerca di Windows 10 dall'angolo in basso a sinistra della schermata del desktop. Scrivi "pgadmin" e l'applicazione verrà visualizzata. Seleziona PGadmin 4 per aprirlo rapidamente. Dopo aver selezionato, ci vorranno fino a 20 secondi per aprire normalmente.

Un lancio richiederà la password del server di database, che hai aggiunto al momento dell'installazione. Aggiungi quella password e tocca il pulsante "OK" per continuare a utilizzarla. Sul lato più a sinistra, vedrai l'opzione "server". Espanderlo per vedere i database. Espandi l'opzione del database e tocca il database che si desidera utilizzare per questa implementazione. Abbiamo usato "Aqsayasin" qui. Fare clic sull'icona dello strumento query per aprire l'area di query per il database, i.e., "Aqsayasin".

Prima di fare qualsiasi cosa, dobbiamo elencare tutti gli indici già realizzati del nostro database. Per questo, è necessario utilizzare l'istruzione Seleziona usando "pg_indexes" dello schema pubblico che recupera la colonna "nome dello schema", "nome tabella", "nome indice" e "indice def" da esso. Abbiamo un totale di 6 indici che sono già presenti nel nostro database "Aqsayasin" con questa query.

Puoi vedere i nomi degli indici già qui nella terza colonna dal lato sinistro dall'uscita sopra. ReindEx l'indice "In_New" della tabella "Nuovo" e dello schema "pubblico" usando il comando ReinDex qui. Utilizzare la parola chiave "reindex" con il nome dell'indice preceduto dalla parola chiave "indice" come mostrato nella query seguente. L'esecuzione di questa query ha avuto successo per quanto riguarda l'output del messaggio di successo della query. Ora, questo indice è aggiornato e se c'è un problema, non ci sarà più.

Non solo indici, ma il comando ReinDex può anche essere lanciato per aggiornare l'intera tabella del tuo database. Per questo, è necessario aggiungere il nome di una tabella anziché indice. ReindEx la tabella "Atest" con il comando ReinDex seguito dalla parola chiave "Tabella" prima del nome della tabella. Durante l'esecuzione di questa query, abbiamo riscontrato ancora una volta il messaggio di query di successo nella nostra area di uscita delle query. Il tavolo "atest" viene anche reindexato o ricreato per l'uso.

Non solo tabelle e indici, ma utilizzerai anche il comando ReinDex per aggiornare l'intero schema del tuo sistema. Ciò significa che, su reindicizzazione dello schema, tutti i database o le tabelle verranno aggiornati con una singola query. Pertanto, stiamo utilizzando nuovamente la query ReinDex nel nostro strumento di query per reindex lo schema "pubblico" del nostro database. Utilizzare la parola chiave "schema" dopo la parola chiave ReinDex e prima del nome di uno schema all'interno di questa query. In esecuzione, tutto lo schema verrà reindexed e ti mostrerà il messaggio di successo dopo un po ', io.e., Ci vuole un po 'più di tempo di una solita domanda. Questa query reindex di tutti i database sul tuo sistema, i.e., Postgres e altri.

Per aggiornare un singolo database con molte tabelle, possiamo anche usare il comando reindex. Devi solo utilizzare la parola chiave "database" con il nome di un database per essere reindexato preceduto dal reindice della parola chiave. Reindex del database predefinito "Postgres" durante l'utilizzo dello strumento di query di un altro database, i.e., “Aqsayasin. Si verificano un errore mostrato nell'immagine sottostante su questa esecuzione di query. Sta affermando che stiamo attualmente utilizzando un altro database e stiamo cercando di reindex del database "Postgres". Quindi non siamo in grado di fare ciò che vogliamo fare. Pertanto, possiamo solo reindilare il database su cui stiamo lavorando. Aggiorniamo il nostro comando.

Abbiamo sostituito il nome di un database nella stessa query, i.e., "Aqsayasin". La query ReindEx è ora correttamente dopo l'esecuzione, mostrando che il database viene reinded correttamente.

Usiamo lo schema di parole chiave all'interno dello stesso comando ReinDex per aggiornare o ricreare gli indici trovati nel nostro catalogo di database attualmente aperto, i.e., "Aqsayasin". Questo ricrea anche gli indici condivisi. Su questa esecuzione di istruzioni sullo strumento di query, finora abbiamo avuto successo.

Utilizzando PostgreSQL Shell (PSQL):

La stessa funzionalità può essere ottenuta con il guscio PostgreSQL. Apri la shell PostgreSQL, cercando la parola chiave "PSQL" nella barra di ricerca. Tocca l'applicazione Mysql Shell e scrivi il nome dell'host locale che hai utilizzato. Ora, assicurati di aggiungere il nome corretto del tuo database in cui si desidera eseguire il reindxing insieme al numero di porta corretto. Dopo questo, verrai invitato ad aggiungere il nome utente e la password per l'utente del database. Puoi anche andare con il database "Postgres" e il nome utente, i.e., predefinito. La tua shell sarà pronta per l'uso.

Vediamo quanti indici abbiamo nella nostra tabella "ftest". Per elencarli, utilizzare il comando "\ d+" con il nome della tabella "ftest". L'output di seguito mostra il totale di 2 indici trovati in questa tabella così grasso, i.e., iftest e infestest. Reindetteremo questi indici nelle prossime domande.

Usando lo stesso comando "\ d+", abbiamo visualizzato gli indici per la tabella "valori". Mostra il singolo indice per questa tabella come di seguito. Lo reindereremo anche.

Iniziamo prima di reindilare la tabella "ftest". Lancia l'istruzione "ReinDex" sulla shell PostgreSQL con il nome della tabella, i.e., Ftest. Ha successo e il tavolo è reindexato ora. La parola risultante "reindex" è la prova del nostro successo qui.

Per reindex dello schema PostgreSQL chiamato "Public", dobbiamo usare lo stesso comando ReinDex con il titolo "Schema". Avrà successo di nuovo secondo il risultato. La parola "reindex" è il messaggio di successo sul nostro schermo.

Per ricreare o deindex un singolo database, è necessario specificare il nome del database. Verranno indicizzati solo i record relativi a questo database e nessun altro database verrà modificato.

Ti troverai incapace di reindex dell'altro database diverso da quello attualmente aperto secondo il comando indicato di seguito.

Conclusione:

Abbiamo appreso il concetto di reindEx nel database PostgreSQL. Abbiamo coperto gli esempi per reindex dell'indice esistente per una particolare tabella e reindexed tutti gli indici trovati nelle altre tabelle in un unico passaggio. L'intero concetto di reindExing viene utilizzato per aggiornare o ricreare gli indici per tabelle, database e schema, i.e., tutto in uno. Tutti i nuovi utenti del database PostgreSQL troveranno questo articolo abbastanza utile per l'apprendimento.