博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PostgreSql基础命令及问题总结
阅读量:4560 次
发布时间:2019-06-08

本文共 3512 字,大约阅读时间需要 11 分钟。

 

本章内容:

  1、基本命令

 

基本命令 

  1、psql -U cdnetworks_beian -d cdnetworks_beian         #-U指定用户,-d指定数据库

  2、\l                   #相当于show databases;

  3、\d                  #想当与show tables;

       \d后面跟一个表名,表示显示这个表的结构定义 

    \db       #显示创建的tablespace 

  4、DROP TABLE table_name              #删除表

  5、CREATE DATABASE dbname          #创建数据库

  6、DROP DATABASE                          #删除数据库

  7、CREATE TABLE DEPARTMENT(

                           ID INT PRIMARY KEY NOT NULL,

                       DEPT CHAR(50) NOT NULL,

);

                                                              #创建表

 

  

 

Mac 安装postgreSql的启动方法

To migrate existing data from a previous major version of PostgreSQL, see:  https://www.postgresql.org/docs/10/static/upgrading.html  You will need your previous PostgreSQL installation from brew to perform  `pg_upgrade` or `pg_dumpall` depending on your upgrade method.  Do not run `brew cleanup postgresql` until you have performed the migration.To have launchd start postgresql now and restart at login:  brew services start postgresqlOr, if you don't want/need a background service you can just run:  pg_ctl -D /usr/local/var/postgres start==> Summary?  /usr/local/Cellar/postgresql/10.0: 3,367 files, 38.7MB brew services start postgresql      #启动postgrebrew services stop postgresqlbrew services restart postgresql

 

也可以用pg_ctl去启动

pg_ctl -D /usr/local/var/postgres/ -l /usr/local/var/postgres/server.log start#启动postgre sqlpg_ctl -D /usr/local/var/postgres/ -l /usr/local/var/postgres/server.log restart

 

查看tablespace的方法

SELECT * FROM pg_tablespace;---\dbcreateuser cdnetworks_beian -s -P         #创建炒鸡用户。然后就可以创建表空间了

 

事务报错

 

cdnetworks_beian=# CREATE TABLESPACE cdnetworks_beian LOCATION '/tmp/data/cdnetworks_beian';CREATE TABLESPACEcdnetworks_beian=# \db                       List of tablespaces       Name       |      Owner       |          Location          ------------------+------------------+---------------------------- cdnetworks_beian | cdnetworks_beian | /tmp/data/cdnetworks_beian dbtbs01          | wangjin          | /usr/local/var/postgres pg_default       | wangjin          |  pg_global        | wangjin          | (4 rows)  #本地可以正常链接,并执行命令,但是通过psycopg2会有问题,如下所示: In [17]: cur.execute("CREATE TABLE oui_service (service_id INT PRIMARYKEY,service_name VARCHAR(20)) TABLESPACE cdnetworks_beian;")---------------------------------------------------------------------------InternalError                             Traceback (most recent call last)
in
()----> 1 cur.execute("CREATE TABLE oui_service (service_id INT PRIMARYKEY,service_name VARCHAR(20)) TABLESPACE cdnetworks_beian;") InternalError: current transaction is aborted, commands ignored until end oftransaction block #事务被终端了,这时候需要 conn.commit() 下,让其回滚,然后再去执行其他的操作

 

 

 

远程登录没有权限

远程登录操作,如上报错,实际上本地是可以登录,也可以创建任何东西的。

需要修改下配置

   1.修改pg_hba.conf文件,配置用户的访问权限(#开头的行是注释内容):

  1. # TYPE DATABASE  USER    CIDR-ADDRESS     METHOD
  2. # "local" is for Unix domain socket connections only
  3. local all    all               trust
  4. # IPv4 local connections:
  5. host  all    all    127.0.0.1/32     trust
  6. host  all    all    192.168.1.0/24    md5
  7. # IPv6 local connections:
  8. host  all    all    ::1/128       trust

   其中,第7条是新添加的内容,表示允许网段192.168.1.0上的所有主机使用所有合法的数据库用户名访问数据库,并提供加密的密码验证。

   其中,数字24是子网掩码,表示允许192.168.1.0--192.168.1.255的计算机访问!

 

   2.修改postgresql.conf文件,将数据库服务器的监听模式修改为监听所有主机发出的连接请求。

   定位到#listen_addresses=’localhost’。PostgreSQL安装完成后,默认是只接受来在本机localhost的连接请 求。

   将行开头都#去掉,将行内容修改为listen_addresses=’*'来允许数据库服务器监听来自任何主机的连接请求

 

   然后重启服务,这是后远程就可以登录操作了。

 

tablesspace 目录下的文件被删除了

  报错:

  原因:

  把这个tablespace指向的文件,放到这个tmp目录下了,一重启什么都没有了,需要重新建立

  # drop tablespace if exists cdnetworks_beian;

  #create tablespace cdnetworks_beian  location '/Users/shell/postgresql/data';

 

 

 

 

 

 

 

转载于:https://www.cnblogs.com/nopnog/p/7756172.html

你可能感兴趣的文章
旋转图像
查看>>
字符串中的数字(字符串、循环)
查看>>
15.select into
查看>>
运行web项目端口占用问题
查看>>
Java Spring-IOC和DI
查看>>
【NOIP1999】【Luogu1015】回文数(高精度,模拟)
查看>>
Linux上安装Python3.5
查看>>
crt安装
查看>>
git切换分支报错:error: pathspec 'origin/XXX' did not match any file(s) known to git
查看>>
c++中static的用法详解
查看>>
转 我修改的注册表,但是程序运行起来,还是记着以前的
查看>>
图片轮播功能
查看>>
第六周小组作业:软件测试和评估
查看>>
debian(kali Linux) 安装net Core
查看>>
centos 7防火墙设置
查看>>
每日一小练——数值自乘递归解
查看>>
函数依赖的公理化系统
查看>>
rabbitmq学习(四):利用rabbitmq实现远程rpc调用
查看>>
侯捷C++学习(二)
查看>>
EasyPlayer RTSP Android安卓播放器修复播放画面卡在第一帧bug
查看>>