SQL-Installation
Introduction
This article is to introduce how to install PostgreSQL server database and client software used to connect this server. We will introduce the following contents:
- Install PostgreSQL server on Window and Linux
- Install Client software (I choose VSCode here)
- Connect to PostgreSQL to create database
- Some useful commands to manage database
PostgreSQL Installation
为了安装 PostgreSQL, 我们首先要安装一个SQL的数据库服务器用于存放和管理数据库里面的数据。另外, 我们要访问这个PostgreSQL的数据库我们就要有一个client客户端对这个服务器进行远程连接访问,并通过在Client端编写SQL代码对数据进行增删查改等操作。所以这里我们除了安装PostgreSQL的 server外,我们需要选择client客户端安装。 其中常见的Client可以是VSCode的PostgreSQL插件, SQL WorkBench
PostgreQL Server Installation
Window
这里介绍PostgresSQL在Window里面的安装。 下载地址: https://www.enterprisedb.com/downloads/postgres-postgresql-downloads
- 安装的时候根据系统的版本进行下载安装:
在安装时候会它问你要不要安装一些元件,这里我们可以默认安装所有元件
之后我们可以选择database的存放位置,一般都是默认在C盘里面。
- 在选择存放位置后, 我们需要设置这个PostgresSQL的登录的password,而它的默认的user name是
postgres
以及访问的端口port(默认是5432). 这一步很重要,之后在Client里面连接PostgreSQL server时需要用到这个 username 和password以及port
在所有设定设置好后它会显示所有的summary,之后只管点next
完成安装就可以了。
Ubuntu
在Ubuntu的系统里面,我们可以很简单通过command line的方式直接安装PostgreSQL:
1 | sudo apt-get update |
安装后,PostgreSQL会默认创建名为postgres
的用户,密码为空
1 | # sudo -i -u postgres |
启动和停止PostgreSQL:
1 | sudo /etc/init.d/postgresql start # 开启 |
Client Installation
在安装了PostgreSQL server后,一般会有SQL Shell窗口程序进入server,并直接用SQL对server进行处理。 但是如果我们想远程操作服务器就需要用到Client。这里我们介绍如何安装VSCode的PostgreSQL插件对database进行访问。
在VSCode的左侧一栏里面的查找按键里面查找到以下的PostgreSQL插件,并安装。
在安装之后我们可以看到左侧栏下面有个大象的icon,那么就是安装成功了
打开这个插件,并在上面找的一个”+”加号的icon的add connection的按键,点击去就把下面一些信息填写进去就可以在VSCode里面添加登录到PostgreSQL server的信息:
The host of the database
: 如果是本地连接就填localhost
或者127.0.0.1
, 否则要填写server的IP地址The PostgreSQL user to authenticate as
:这里填写之前默认的username:postgres
The password of the PostgreSQL user
: 这里填写之前安装时自己设定的密码The port number to connect to
: 这里默认5432Use an ssl connection?
: 这里选择Standard Connection
Show All Databases
: 这里选择PostgreSQL server里面已经有的database。如果之前没有重建的话,一般会有一个database叫做postgres
, 直接默认选择这个就好了The display name of the database connection
: 这个是我们重建了这个connection后,在VSCode左侧栏里面显示的SQL connection的名字。
除了VSCode外, 我们可以通过安装 SQL Workbench对PostgreSQL server进行连接,link: https://www.sql-workbench.eu/MainWindow_png.html
Useful Commands in PostgreSQL
SQL Shell
在Client和 Server的shell里面,我们都可以直接通过PostgreSQL的语句对databases, table进行增删查改。 不过在Server的command line的SQL shell里面,我们可以直接通过一些命令进行查询. 在进入SQL shell后它会出现postgres=#
输入行, 这个是指当前的database的名字
\q
: 退出SQL\l
: 显示所有database名字\c database_name
: 切换到指定的database\d
: 显示当前database里面所有的table名字\help
: 显示help信息(SQL的语法信息)\help SQL_keyword
: 显示SQL关键词的用法- 登录进去psql的语句:
psql -h host_name -p port_num -U user_name database_name
Some useful SQL commands
- Create and drop database
CREATE DATABASE dbname;
DROP DATABASE IF EXISTS database_name;
: 这里的IF EXISTS
可以加也可不加,加了之后如果database是不存在的话不会报错
- Create and drop tables
在SQL里面创建table时我们要先创建一个空的table定义每一列的datatype,之后才能够把数据一行行insert导入进去。- create empty table example:
1
2
3
4
5
6
7
8CREATE TABLE table_name(
column1 datatype,
column2 datatype,
column3 datatype,
.....
columnN datatype,
PRIMARY KEY( 一个或多个列 )
);1
2
3
4
5
6
7CREATE TABLE COMPANY(
ID INT PRIMARY KEY NOT NULL,
NAME TEXT NOT NULL,
AGE INT NOT NULL,
ADDRESS CHAR(50),
SALARY REAL
); - Copy data from CSV file using
COPY
1
2
3# table in data.csv
id_count,tenure_count
10000,111
2
3
4
5
6
7
8
9DROP TABLE IF EXISTS RESULT3;
CREATE TABLE IF NOT EXISTS RESULT3(
id_count varchar(100) NOT NULL,
tenure_count varchar(100) NOT NULL
);
COPY RESULT3 FROM 'E:\data.csv' WITH (FORMAT CSV, HEADER TRUE);
SELECT * FROM RESULT3;
- create empty table
Reference
[1] Runoob: https://www.runoob.com/postgresql/windows-install-postgresql.html
[2] SQL Workbench: https://www.sql-workbench.eu/MainWindow_png.html
[3] Microsot VSCode: https://marketplace.visualstudio.com/items?itemName=ms-ossdata.vscode-postgresql