1.postgreSQL介绍:
PostgreSQL是一个功能强大的开源对象关系数据库系统,它使用并扩展了SQL语言,并结合了许多安全存储和扩展最复杂数据工作负载的功能。
2.postgreSQL特点:
免费,开源,高度可扩展性。数据完整性,并发性,可靠性,灾难恢复。安全。
3.postgreSQL安装:
系统环境 ; Ubuntu16.04 LTS
使用源码编译安装postgreSQL:
下载postgreSQL: # wget --no-cookies --no-check-certificate https://ftp.postgresql.org/pub/source/v9.5.14/postgresql-9.5.14.tar.gz 创建安装的目录: # mkdir /data/{services,packages,untar} -p 安装依赖包: # apt-get install -y libreadline6-dev libxslt-dev zlib1g-dev systemtap-sdt-dev libxml2-dev 解压软件包: # tar -zxvf postgresql-9.5.14.tar.gz -C /data/untar/ # cd /data/untar/postgresql-9.5.14/ # ./configure --prefix=/data/services/postgresql9 \ --datarootdir=/data/services/postgresql9/postdata \ --with-pgport=5432 --with-python --with-libxml \ --with-libxslt --without-ldap --enable-thread-safety --enable-dtrace # make && make install //编译并安装 安装完成后的提示: PostgreSQL installation complete.
设置postgresql共享库搜索路径:
方法1: 定义LD_LIBRARY_PATH的变量。 # export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/data/services/postgresql9/lib 方法2: 添加到共享库文件: # cat /etc/ld.so.conf.d/postgresql.conf /data/services/postgresql9/lib #ldconfig //立即生效
库文件在链接(静态库和共享库)和运行(仅限于使用共享库的程序)时被使用,其搜索路径是在系统中进行设置的。一般 Linux 系统把 /lib 和 /usr/lib 两个目录作为默认的库搜索路径。ldconfig命令的作用就是将 /etc/ld.so.conf.d/*.conf 列出的路径下的库文件缓存到 /etc/ld.so.cache 以供使用。
linux系统添加共享库详解: https://blog.csdn.net/lu_embedded/article/details/56675653
查看共享库:
设置环境变量:
# echo "export PATH=$PATH:/data/services/postgresql9/bin" >> /etc/profile # source /etc/profile //立即生效。
创建postgres账户并设置密码:
# useradd -d /data/services/postgresql9/ -M postgres # echo -e "123456\n123456" | passwd postgres 更改属主和属组: # chown -R postgres.postgres /data/services/postgresql9/
创建数据目录和初始化数据目录:
# mkdir /data/services/postgresql9/data # su - postgres $ bin/initdb -D /data/services/postgresql9/data/
修改配置文件: # grep -Ev '^[ ]*$|^#' /data/services/postgresql9/data/postgresql.conf data_directory = '/data/services/postgresql9/data' #数据库安装路径,用于数据存储的目录 hba_file = '/data/services/postgresql9/data/pg_hba.conf' #基于主机的身份验证文件 ident_file = '/data/services/postgresql9/data/pg_ident.conf' #用户名称映射的配置文件 external_pid_file = '/data/services/postgresql9/postgresql.pid' #用于管理程序的额外进程pid文件 listen_addresses = '*' #指定服务器在哪些 TCP/IP 地址上监听客户端连接 port = 5432 #监听数据库的TCP端口 max_connections = 100 #最大连接数。 unix_socket_directories = '/tmp' #监听来自客户端连接的unix域的套接字目录 shared_buffers = 128MB #设置数据库服务器将使用的共享内存缓冲区量,默认值。 dynamic_shared_memory_type = posix #指定服务器使用shm_open分配的 POSIX 共享内存。 log_line_prefix = '%t [%p-%l] %q%u@%d' # 设置日志输出格式。 log_timezone = 'PRC' #设置数据库日志文件在写日志文件时使用的时区 datestyle = 'iso, ymd' #日期风格,年月日 timezone = 'PRC' #设置服务端和客户端时区。 lc_messages = 'en_US.UTF-8' #系统错误消息的语言。 lc_monetary = 'zh_CN.UTF-8' #设置货币值的显示格式的语言 lc_numeric = 'zh_CN.UTF-8' #设置用于格式化数字的语言。 lc_time = 'zh_CN.UTF-8' #设置用于格式化时间日期的语言。 default_text_search_config = 'pg_catalog.english' #选择文本搜索功能所使用的文本搜索配置。
设置ubuntu16.04下系统的语言和编码设置:
# apt-get install -y language-pack-zh-hant language-pack-zh-hans language-selector-gnome # dpkg-reconfigure locales 选择zh_CN.UTF-8和en_US.UTF-8编码。 编码配置文件: /var/lib/locales/supported.d/ 该文件下有三个文件: en zh-hans zh-hant #dpkg-reconfigure --force locales 强制更新,使设置生效。
启动服务:
$ bin/pg_ctl -D /data/services/postgresql9/data/ -l logfile start 或者: $ ./bin/postmaster -D /data/services/postgresql9/data > logfile 2>&1 &
2. 连接postgresSQL:
$ ./bin/psql
查看客户端字符编码:
查看服务端字符编码:
PostgreSQL的控制台命令:
\h : 查看SQL命令解释。 \? : 查看psql命令列表。 \i sqlfile : 调用后缀为sql的文件并输出。 \l : 列出所有数据库。 \c [databasename] : 连接其他数据库。 \d : 列出当前数据库的所有表. \d [tablename] : 列出表结构。 \d+ [tablename] : 查看表基本情况。 \du : 列出所有用户。 \e : 打开文本编辑器。 \conninfo : 列出当前数据库和连接的信息。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。