irpas技术客

postgreSql修改端口后psql命令行链接报错”/tmp/.s.PGSQL.5432“_神笔馬郎

未知 4414

问题

今天修改pg的端口号port改成54328后重启完数据库的时候直接psql进库的时候进不去

[postgres@iZ8vbifqgkwljcq9ccpkg7Z data]$ psql psql: could not connect to server: No such file or directory Is the server running locally and accepting connections on Unix domain socket "/tmp/.s.PGSQL.5432

解决方案

这时,进数据库有两种方式

psql 后面加上端口号 [postgres@iZ8vbifqgkwljcq9ccpkg7Z ~]$ psql Password for user postgres: psql (12.7) Type "help" for help. postgres=# 在环境变量/usr/local/pgsql/.bash_profile中加上一句,添加完source下 [postgres@iZ8vbifqgkwljcq9ccpkg7Z ~]$ vi .bash_profile # .bash_profile # Get the aliases and functions if [ -f ~/.bashrc ]; then . ~/.bashrc fi # User specific environment and startup programs export PGPORT=54328 #自己添加的环境变量 PATH=$PATH:$HOME/.local/bin:$HOME/bin export PATH 一些操作心得 安装完数据库或者其他常用软件,记得修改默认端口,密码加密和复杂设置,防止糟病毒(或者挖矿软件)攻击

笔者就因为使用了默认的用户postgres(密码同)遇到了挖矿软件的攻击,因为放开了对外的访问权限(配置文件的IP:0.0.0.0 all all ),防火墙也没有设置安全策略,病毒暴力破解了密码,登录系统后在此用户的目录下生成”authorized_keys“文件,里面存放了RSA公钥,对方服务器就可以携带已知的公钥进行免密登录(即使你修改数据库用户密码也无济于事),并且在你的用户目录下的.bash_profile环境变量中追加curl ……a.sh这样的下载矿机脚本指令(即时你删除病毒,每当你切换用户的时候就会重新下载执行),它会下载到隐藏的目录下…的下面(比如/var/tmp/…/***),可以通过find / -name …进行查找并删除,同时删除top下的非正常进程和authorized_keys文件。

postgreSql安装后会创建postgres系统用户作为数据库的默认用户,需要切换到su - postgres用户下进行数据库的操作,psql进行连接登录分区的数据表通过Navicat客户端导出*.sql文件,再导入会有错误,可以通过psql自己客户端进行数据库完整导出导入: 1、在服务器A上导出文件 pg_dump -h 127.0.0.1 -p 5432 -U postgres -d 数据库名>c:\mydb.bak 2、在B服务器上创建同名数据库 postgres=# create database 数据库名 <owner username>; -- 创建数据库指定所属者,不指定默认当前的用户postgres CREATE DATABASE postgres=# 3、将文件拷到服务器B上面,执行如下命令 psql -h 127.0.0.1 -p 5432 -U postgres -d 数据库名 –f /usr/data/mydb.bak 更改数据库密码

postgres=# ALTER USER postgres WITH PASSWORD ‘123456’; #设置密码 ALTER ROLE postgres=#

控制台命令

\q:退出 \h:查看SQL命令的解释,比如\h select。 ?:查看psql命令列表。 \l:列出所有数据库。 \c [database_name]:连接其他数据库。 \d:列出当前数据库的所有表格。 \d [table_name]:列出某一张表格的结构。 \du:列出所有用户。 \e:打开文本编辑器。 \conninfo:列出当前数据库和连接的信息。

数据库操作

–创建新表 CREATE TABLE user_tbl(name VARCHAR(20), signup_date DATE); –插入数据 INSERT INTO user_tbl(name, signup_date) VALUES(‘张三’, ‘2013-12-22’); –选择记录 SELECT * FROM user_tbl; –更新数据 UPDATE user_tbl set name = ‘李四’ WHERE name = ‘张三’; –删除记录 DELETE FROM user_tbl WHERE name = ‘李四’ ; –添加栏位 ALTER TABLE user_tbl ADD email VARCHAR(40); –更新结构 ALTER TABLE user_tbl ALTER COLUMN signup_date SET NOT NULL; –更名栏位 ALTER TABLE user_tbl RENAME COLUMN signup_date TO signup; –删除栏位 ALTER TABLE user_tbl DROP COLUMN email; –表格更名 ALTER TABLE user_tbl RENAME TO backup_tbl; –删除表格 DROP TABLE IF EXISTS backup_tbl;


1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,会注明原创字样,如未注明都非原创,如有侵权请联系删除!;3.作者投稿可能会经我们编辑修改或补充;4.本站不提供任何储存功能只提供收集或者投稿人的网盘链接。

标签: #data #psqlpsql #could #not #connect #To