Das ukrainische Volk kämpft für sein Land. Viele Zivilisten, Frauen und Kinder, leiden. Hunderte wurden getötet und verletzt, Tausende wurden vertrieben.
Dies ist ein Bild aus meiner Heimatstadt Charkiw. Dieser Ort liegt direkt im alten Stadtzentrum.
Bild von @fomenko_ph (Telegramm).
Bitte denken Sie darüber nach, zu spenden oder sich ehrenamtlich zu engagieren.
https://bank.gov.ua/en/
https://savelife.in.ua/en/donate/
https://www.comebackalive.in.ua/donate
https://www.globalgiving.org/projects/ukraine-crisis-relief-fund/
https://www.savethechildren.org/us/where-we-work/ukraine
https://www.facebook.com/donate/1137971146948461/
https://donate.wck.org/give/393234#!/donation/checkout
https://atlantaforukraine.com/
Dies ist ein Postgres-Client, der automatische Vervollständigung und Syntaxhervorhebung durchführt.
Homepage: http://pgcli.com
MySQL-Äquivalent: http://mycli.net
Wenn Sie bereits wissen, wie man Python-Pakete installiert, können Sie einfach Folgendes tun:
$ pip install -U pgcli oder $ sudo apt-get install pgcli # Nur auf Debian-basiertem Linux (z. B. Ubuntu, Mint usw.) $ brew install pgcli # Nur unter macOS
Wenn Sie nicht wissen, wie Sie Python-Pakete installieren, lesen Sie bitte die detaillierten Anweisungen.
$ pgcli [Datenbankname] oder $ pgcli postgresql://[user[:password]@][netloc][:port][/dbname][?extra=value[&other=other-value]]
Beispiele:
$ pgcli local_database $ pgcli postgres://amjith:[email protected]:5432/app_db?sslmode=verify-ca&sslrootcert=/myrootcert
Für weitere Details:
$ pgcli --help Verwendung: pgcli [OPTIONEN] [DBNAME] [BENUTZERNAME] Optionen: -h, --host TEXT Hostadresse der Postgres-Datenbank. -p, --port INTEGER Portnummer, an der sich die Postgres-Instanz befindet Hören. -U, --username TEXT Benutzername zum Herstellen einer Verbindung zur Postgres-Datenbank. -u, --user TEXT Benutzername zum Herstellen einer Verbindung zur Postgres-Datenbank. -W, --password Passwortabfrage erzwingen. -w, --no-password Nie zur Eingabe eines Passworts auffordern. --single-connection Verwenden Sie keine separate Verbindung für Vervollständigungen. -v, --version Version von pgcli. -d, --dbname TEXT Datenbankname, zu dem eine Verbindung hergestellt werden soll. --pgclirc FILE Speicherort der pgclirc-Datei. -D, --dsn TEXT Den im Abschnitt [alias_dsn] konfigurierten DSN verwenden der pgclirc-Datei. --list-dsn Liste der im [alias_dsn] konfigurierten DSN Abschnitt der pgclirc-Datei. --row-limit INTEGER Schwellenwert für die Eingabeaufforderung zur Zeilenbegrenzung festlegen. Verwenden Sie 0 bis Eingabeaufforderung deaktivieren. --less-chatty Überspringe die Einführung beim Start und den Abschied beim Beenden. --prompt TEXT Eingabeaufforderungsformat (Standard: „u@h:d>“). --prompt-dsn TEXT Eingabeaufforderungsformat für Verbindungen, die DSN-Aliase verwenden (Standard: „u@h:d>“). -l, --list verfügbare Datenbanken auflisten, dann beenden. --auto-vertical-output Automatisch in den vertikalen Ausgabemodus wechseln, wenn Das Ergebnis ist breiter als die Terminalbreite. --warn [all|moderate|off] Warnt, bevor eine destruktive Abfrage ausgeführt wird. --help Diese Nachricht anzeigen und beenden.
pgcli
unterstützt außerdem viele der gleichen Umgebungsvariablen wie psql
für Anmeldeoptionen (z. B. PGHOST
, PGPORT
, PGUSER
, PGPASSWORD
, PGDATABASE
).
Die SSL-bezogenen Umgebungsvariablen werden ebenfalls unterstützt. Wenn Sie also eine Postgres-Datenbank über eine SSL-Verbindung verbinden müssen, können Sie die Umgebung wie folgt festlegen:
export PGSSLMODE="verify-full" export PGSSLCERT="/your-path-to-certs/client.crt" export PGSSLKEY="/your-path-to-keys/client.key" export PGSSLROOTCERT="/your-path-to-ca/ca.crt" pgcli -h localhost -p 5432 -U Benutzername postgres
Die pgcli wird mit prompt_toolkit geschrieben.
Automatische Vervollständigung während der Eingabe von SQL-Schlüsselwörtern sowie Tabellen und Spalten in der Datenbank.
Syntaxhervorhebung mit Pygments.
Die intelligente Vervollständigung (standardmäßig aktiviert) schlägt eine kontextsensitive Vervollständigung vor.
SELECT * FROM <tab>
zeigt nur Tabellennamen an.
SELECT * FROM users WHERE <tab>
zeigt nur Spaltennamen an.
Primitive Unterstützung für psql
-Backslash-Befehle.
Pretty druckt tabellarische Daten.
Beim ersten Start wird automatisch eine Konfigurationsdatei unter ~/.config/pgcli/config
erstellt. Eine Beschreibung aller verfügbaren Optionen finden Sie in der Datei selbst.
Wenn Sie daran interessiert sind, zu diesem Projekt beizutragen, möchte ich mich zunächst ganz herzlich bedanken. Ich habe ein kleines Dokument geschrieben, um zu beschreiben, wie man dies in einem Entwicklungs-Setup zum Laufen bringt.
https://github.com/dbcli/pgcli/blob/master/DEVELOP.rst
Bitte zögern Sie nicht, sich an uns zu wenden, wenn Sie Hilfe benötigen. * Amjith, pgcli-Autor: [email protected], Twitter: @amjithr * Irina, pgcli-Betreuer: [email protected], Twitter: @irinatruong
Der einfachste Weg, pgcli zu installieren, ist die Verwendung von Homebrew.
$ brew installiere pgcli
Erledigt!
Alternativ können Sie pgcli
als Python-Paket mit einem Paketmanager namens pip
installieren. Damit dies funktioniert, muss Postgres auf Ihrem System installiert sein.
Ausführlicher Leitfaden für die ersten Schritte mit pip
– https://pip.pypa.io/en/latest/installation/
$ welcher Pip
Wenn es installiert ist, können Sie Folgendes tun:
$ pip pgcli installieren
Wenn dies aufgrund von Berechtigungsproblemen fehlschlägt, müssen Sie den Befehl möglicherweise mit Sudo-Berechtigungen ausführen.
$ sudo pip pgcli installieren
Wenn pip nicht installiert ist, prüfen Sie, ob easy_install auf dem System verfügbar ist.
$ which easy_install $ sudo easy_install pgcli
Ausführlicher Leitfaden für die ersten Schritte mit pip
– https://pip.pypa.io/en/latest/installation/
Überprüfen Sie, ob pip bereits in Ihrem System verfügbar ist.
$ welcher Pip
Wenn es nicht vorhanden ist, installieren Sie pip mit Ihrem Linux-Paketmanager. Das könnte etwa so aussehen:
$ sudo apt-get install python-pip # Debian, Ubuntu, Mint usw oder $ sudo yum install python-pip # RHEL, Centos, Fedora usw
pgcli
erfordert die Pakete python-dev, libpq-dev und libevent-dev. Sie können diese über den Paketmanager Ihres Betriebssystems installieren.
$ sudo apt-get install python-dev libpq-dev libevent-dev oder $ sudo yum installiere python-devel postgresql-devel
Dann können Sie pgcli installieren:
$ sudo pip pgcli installieren
Pgcli kann in Docker ausgeführt werden. Dies kann nützlich sein, um pgcli auszuprobieren, ohne es oder systemweite Abhängigkeiten zu installieren.
So erstellen Sie das Image:
$ docker build -t pgcli .
So erstellen Sie einen Container aus dem Bild:
$ docker run --rm -ti pgcli pgcli <ARGS>
Um auf Postgresql-Datenbanken zuzugreifen, die auf Localhost lauschen, stellen Sie sicher, dass Sie den Docker im „Host-Net-Modus“ ausführen. Um beispielsweise auf eine Datenbank namens „foo“ auf dem Postgresql-Server zuzugreifen, der auf localhost:5432 (dem Standardport) läuft:
$ docker run --rm -ti --net host pgcli pgcli -h localhost foo
Um über einen Unix-Socket eine Verbindung zu einer lokal ausgeführten Instanz herzustellen, binden Sie den Socket an den Docker-Container:
$ docker run --rm -ti -v /var/run/postgres:/var/run/postgres pgcli pgcli foo
Pgcli kann über die IPython-Konsole ausgeführt werden. Wenn Sie an einer Abfrage arbeiten, kann es nützlich sein, in eine pgcli-Sitzung einzusteigen, ohne die IPython-Konsole zu verlassen, eine Abfrage zu iterieren und dann pgcli zu beenden, um die Abfrageergebnisse in Ihrem IPython-Arbeitsbereich zu finden.
Vorausgesetzt, Sie haben IPython installiert:
$ pip ipython-sql installieren
Führen Sie anschließend ipython aus und laden Sie die Erweiterung pgcli.magic
:
$ ipython In [1]: %load_ext pgcli.magic
Stellen Sie eine Verbindung zu einer Datenbank her und erstellen Sie eine Abfrage:
In [2]: %pgcli postgres://someone@localhost:5432/world Verbunden: jemand@Welt jemand@localhost:world> wählen Sie * aus Stadt c aus, wobei der Ländercode = „USA“ und die Bevölkerung > 1000000 ist; +------+--------------+---------------+----------- ---+--------------+ | id | Name | Ländercode | Bezirk | Bevölkerung | |------+--------------+---------------+----------- ---+--------------| | 3793 | New York | USA | New York | 8008278 | | 3794 | Los Angeles | USA | Kalifornien | 3694820 | | 3795 | Chicago | USA | Illinois | 2896016 | | 3796 | Houston | USA | Texas | 1953631 | | 3797 | Philadelphia | USA | Pennsylvania | 1517550 | | 3798 | Phönix | USA | Arizona | 1321045 | | 3799 | San Diego | USA | Kalifornien | 1223400 | | 3800 | Dallas | USA | Texas | 1188580 | | 3801 | San Antonio | USA | Texas | 1144646 | +------+--------------+---------------+----------- ---+--------------+ WÄHLEN 9 Zeit: 0,003 s
Beenden Sie die pgcli-Sitzung mit Ctrl + D
und suchen Sie nach den Abfrageergebnissen:
jemand@localhost:world> Auf Wiedersehen! 9 Reihen betroffen. Aus[2]: [(3793, u'New York', u'USA', u'New York', 8008278), (3794, u'Los Angeles', u'USA', u'Kalifornien', 3694820), (3795, u'Chicago', u'USA', u'Illinois', 2896016), (3796, u'Houston', u'USA', u'Texas', 1953631), (3797, u'Philadelphia', u'USA', u'Pennsylvania', 1517550), (3798, u'Phoenix', u'USA', u'Arizona', 1321045), (3799, u'San Diego', u'USA', u'Kalifornien', 1223400), (3800, Dallas, USA, Texas, 1188580), (3801, u'San Antonio', u'USA', u'Texas', 1144646)]
Die Ergebnisse stehen in der speziellen lokalen Variablen _
zur Verfügung und können einer Variablen Ihrer Wahl zugewiesen werden:
In [3]: my_result = _
Pgcli hat die Unterstützung für Python<3.8 ab 4.0.0 eingestellt. Wenn Sie es benötigen, installieren Sie pgcli <= 4.0.0
.
Ein besonderer Dank geht an Jonathan Slenders für die Erstellung des Python Prompt Toolkits, das im wahrsten Sinne des Wortes die Backbone-Bibliothek darstellt, die diese App ermöglicht hat. Jonathan hat auch während der Entwicklung dieser App wertvolles Feedback und Unterstützung gegeben.
Klicken Sie hier, um Befehlszeilenoptionen zu analysieren und Fehlermeldungen auszudrucken.
Vielen Dank an psycopg für die Bereitstellung einer absolut soliden Schnittstelle zur Postgres-Datenbank.
Vielen Dank an alle Betatester und Mitwirkenden für Ihre Zeit und Geduld. :) :)