linux debian 9 配置postgresSQL数据库
#读者注意:本文可以选择不看解释,直接执行每段的0中的代码
(〇):一些概念(可以跳过直接使用(一)0的代码)
1. 客户端:psql。postgreSQL的命令行客户端程序,在终端输入psql进入postgreSQL数据库
2. 账户:与我们常用的mysql不同,使用postgresSQL数据库无须选择数据库账户,在类unix系统下,postgreSQL直接使用你的当前系统账户作为数据库账户。
默认的,在创建伊始,postgres生成一个名为postgres的数据库和一个名为postgres的数据库超级用户,同时还生成了一个名为postgres的Linux系统用户,我们可以通过cat /etc/passwd 命令看到它。
如果要想像mysql一样,使用另外的数据库账户,则需要另行修改。
(一) : 基本配置
0. 代码(不愿意看详情的可以照着敲)
- sudo apt install postgresql
- /etc/init.d/postgresql status
- /etc/init.d/postgresql start
- sudo passwd postgres
- su - postgres
- psql
- ALTER USER postgres WITH PASSWORD 'abcdefg';
1. 安装:sudo apt install postgresql
2. 查看postgresql服务状况(默认是运行的,此步可以跳过)
(1)查看:/etc/init.d/postgresql status
(2)停止:/etc/init.d/postgresql stop
(3)开始:/etc/init.d/postgresql start
3. postgresql将为系统创建的账户:postgres
3.(1): 建议更改linux的账户的postgres账户的密码:sudo passwd postgres
4. 进入postgre账户:su - postgres
5. 登录数据库:psql
5.(1) 修改postgreSQL的postgres账户的密码为“abcdefg”:ALTER USER postgres WITHPASSWORD encrypted 'abcdefg';
(二):进阶:新建一个账户
以下假设你有一个linux用户"Bob",你要为他建立一个叫“Bob”的密码为“abcdefg”的账户
0. 代码:
- create user Bob with password 'abcdefg';
- create database Bob owner Bob;
- grant all privileges on database Bob to Bob;
0.1. 其实通过第一步,你的数据库就可以使用了,而且如果你更改了postgreSQL为你创建的postgre账户的密码,就是是很安全了。
然而,我们也可以选择使用自己的数据库账户。
(1)postgre的权限太大,你需要一个更安全的账户。
(1)你的当前系统账户是Bob,你想直接使用Bob这一身份进入数据库而不是切换至postgre。
(2)或者说你的程序调用不方便用postgre账户,需要新建一个数据库账户。
1. 创建一个叫“Bob”的密码为“abcdefg”的账户: create user Bob with password 'abcdefg';
2. 创建属于Bob的数据库(不可省略,必须为同名数据库,不可更改数据库名称为其它):
create database Bob owner Bob;
3. 赋权:grant all privileges on database Bob to Bob;
4. 注意:
(1)通常从linux用户名同名数据库账户使用该账户,不需要输入数据库密码,你的数据库密码通常是用来第三方程序连接的,比方说数据库可视化软件DBevar,比方说远程连接,比方说就你自己的脚本。
(三)开启本地账户登录模式:
0. 代码:
- sudo vim /etc/postgresql/*/main/pg_hba.conf
- 将local all postgres peer改为local all postgres md5,wq退出
- sudo /etc/init.d/postgresql reload
- psql -U postgres
1. 修改postgresql配置的本地机器权限,使所有用户都可以交叉进入
sudo vim /etc/postgresql/*/main/pg_hba.conf
将local all postgres peer改为local all postgres md5,wq退出
(如果改成trust,则不需要输入密码,但不建议这么做)
2. 重载配置:sudo /etc/init.d/postgresql reload
3. 加参数 -U设置进入仓库的用户(此处进入的是postgres):psql -U postgres, 然后输入密码。
(四)允许远程登录:
0. 代码:
- sudo vim /etc/postgresql/*/main/postgresql.conf
- 搜索文件中listen_addresses,讲注释去掉,值改为*,wq退出
- sudo vim /etc/postgresql/*/main/pg_hba.conf
- 在最下面添加一行:host all all 0.0.0.0/0 md5, wq退出
- sudo /etc/init.d/postgresql reload
1. 修改两个配置文件:
(1)postgresql.conf: sudo vim /etc/postgresql/*/main/postgresql.conf,
搜索文件中listen_addresses,讲注释去掉,值改为*,wq退出
(2)pg_hba.conf: sudo vim /etc/postgresql/*/main/pg_hba.conf
在最下面添加一行:host all all 0.0.0.0/0 md5, wq退出
(3)重载配置 :sudo /etc/init.d/postgresql reload
(五)常用指令:
1. 登录指令:
(1)-U指定用户
(2)-d指定数据库,
(3)-h指定服务器,
(4)-p指定端口。
可以这样用:
完整的登录指令:psql -U dbuser -d somedb -h 127.0.0.1 -p 5432
登录linux系统用户名的同名账户的某个仓库:psql somedb
登录linux系统用户名的同名账户的同名仓库:psql
2. 控制台命令:
如果你过去是mysql用户,你会遗憾地发现mysql的一些如同show databases; show tables;use somedatabase 等指令在postgreSQL是行不通的。
- \h:查看SQL命令的解释,比如\h select。
- \?:查看psql命令列表。
- \l:列出所有数据库。
- \c [database_name]:连接其他数据库。
- \d:列出当前数据库的所有表格。
- \d [table_name]:列出某一张表格的结构。
- \du:列出所有用户。
- \e:打开文本编辑器。
- \conninfo:列出当前数据库和连接的信息。
3。 数据库命令:
几乎所有的sql命令都是通用的,大家自行查找使用。
linux debian 9 配置postgresSQL数据库的更多相关文章
- Kali Linux 下安装配置MongoDB数据库 ubuntu 下安装配置MongoDB源码安装数据库
Kali Linux 下安装配置MongoDB数据库 1.下载mongodb.tgz 压缩包: 2.解压到:tar -zxvf mongodb.tgz /usr/local/mongodb 3.创 ...
- linux debian 9 / centos 7配置postgresSQL数据库
#读者注意:本文可以选择不看解释,直接执行每段的0中的代码 (〇):一些概念(可以跳过直接使用(一)0的代码) 1. 客户端:psql.postgreSQL的命令行客户端程序,在终端输入psql进入p ...
- Linux下安装配置MongoDB数据库
说明: 操作系统:CentOS 5.X 64位 IP地址:192.168.21.130 实现目的: 安装配置MongoDB数据库 具体操作: 一.关闭SElinux.配置防火墙 1.vi /etc/s ...
- 虚拟机中ubuntu-16.04 Linux系统下配置mysql数据库,并在windows下使用navicat远程连接
Linux系统下mysql数据库安装配置步骤: 1.在服务器上安装mysql:sudo apt-get install mysql-server sudo apt-get install mysql- ...
- linux下安装 配置 redis数据库
通过终端命令安装(推荐): 1 确保更新源服务器能正常使用 如果没有更换更新源服务器,那么可能一直都下不了软件.欢迎参考我之前的博文来更换成国内的镜像服务器http://www.cnblogs.com ...
- Linux CentOS安装配置MySQL数据库
没什么好说的,直接正面刚吧. 安装mysql数据库 a)下载mysql源安装包:wget http://dev.mysql.com/get/mysql57-community-release-el7- ...
- 【转载】CentOS6.5_X64下安装配置MongoDB数据库
[转载]CentOS6.5_X64下安装配置MongoDB数据库 2014-05-16 10:07:09| 分类: 默认分类|举报|字号 订阅 下载LOFTER客户端 本文转载自zhm&l ...
- Linux下oracle11gR2系统安装到数据库建立配置及最后oracle的dmp文件导入一站式操作记录
简介 之前也在linux下安装过oralce,可每次都是迷迷糊糊的,因为大脑一片空白,网上随便看见一个文档就直接复制,最后搞了乱七八糟,虽然装上了,却乱得很,现在记录下来,希望能给其他网上朋友遇到问题 ...
- Linux下安装配置MongoDB 3.0.x 版本数据库
说明: 操作系统:CentOS 5.X 64位 IP地址:192.168.21.128 实现目的: 安装配置MongoDB数据库 具体操作: 一.关闭SElinux.配置防火墙 1.vi /etc/s ...
随机推荐
- C++ operator bool
雕虫小技: #include <iostream> struct A{ operator bool(){ return false; } }; int main() { A a{}; if ...
- Spring定时任务quartz表达式
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcytp32 0 0 12 * * ?---------------在每天中午12: ...
- poj 1384完全背包
题意:给出猪罐子的空质量和满质量,和n个硬币的价值和质量,求猪罐子刚好塞满的的最小价值. 思路:选择硬币,完全背包问题,塞满==初始化为无穷,求最小价值,min. 代码: #include<io ...
- 在windows中,使用SSH登录VMware ubuntu linux虚拟机
测试环境 主机:window7 sp1 64位 专业版 虚拟机:VMware workstation 12 player 虚拟机操作系统: ubuntu 16.4 目标:在ubuntu下运行SSH服务 ...
- Swiper 滑动
1.http://www.swiper.com.cn/download/ 下载Swiper.JS Swiper.CSS 2.引入项目,添加html <div class="cont ...
- Swiper+JS 上拉刷新
JS // 上拉刷新 var page = 2; var isAjax = true;//加载数据前状态 $( ...
- Mac 下如何使用sed -i命令
今天在学习Linux的过程中发现了sed这一项指令 首先,sed的全称是:Stream Editor 调用sed命令有两种形式: sed [options] 'command' file(s) sed ...
- 201521123091 《Java程序设计》第5周学习总结
Java 第五周总结 第五周的作业. 目录 1.本章学习总结 2.Java Q&A 3.使用码云管理Java代码 4.PTA实验 1.本章学习总结 1.1 尝试使用思维导图总结有关多态与接口的 ...
- 201521123022 《Java程序设计》 第十三周学习总结
1. 本周学习总结 2. 书面作业 Q1. 网络基础 Q1.1 比较ping www.baidu.com与ping cec.jmu.edu.cn,分析返回结果有何不同?为什么会有这样的不同? 前者IP ...
- 从java的开始,java概述,java配置环境变量
一.java开发入门 java 概述 Java划分为三个技术平台:JavaSE(标准版,含Java基础类库),JavaEE(企业版,技术平台),JavaME(小型版,小型产品.嵌入式设备) Jav ...