CentOS 7.2环境搭建实录(第三章:mysql安装和postgresql安装)
来源:SegmentFault
2023-02-16 21:27:46
0浏览
收藏
积累知识,胜过积蓄金银!毕竟在##column_title##开发的过程中,会遇到各种各样的问题,往往都是一些细节知识点还没有掌握好而导致的,因此基础知识点的积累是很重要的。下面本文《CentOS 7.2环境搭建实录(第三章:mysql安装和postgresql安装)》,就带大家讲解一下MySQL、postgresql、Linux知识点,若是你对本文感兴趣,或者是想搞懂其中某个知识点,就请你继续往下看吧~
第三章:mysql安装和postgresql安装
mysql安装
下载mysql
cd /usr/local/src wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz tar -zxvf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz mv mysql-5.7.18-linux-glibc2.5-x86_64 /usr/local/mysql
创建mysql用户
groupadd mysql useradd -r -g mysql mysql
初始化数据库
cd /usr/local/mysql mkdir data chwon -R mysql:mysql data bin/mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data #记录初始化数据库的root用户密码 #也可以使用下面的命令,两者的区别就是一个有初始化密码,一个没有 bin/mysqld --initialize-insecure --user=mysql --datadir=/usr/local/mysql/data
配置启动信息
vi /etc/my.cnf #修改配置如下图所示:

#保存退出 cp -a support-files/mysql.service /etc/init.d/mysqld chmod +x /etc/init.d/mysqld #尝试启动mysql /etc/init.d/mysqld start #成功如下图:

#备注:mysql启动,重启有时会报下图错误:

mmap(137428992 bytes) failed; errno 12 #错误是mysql启动内存不足导致的,解决方法如下: mkdir -p /var/cache/swap/ dd if=/dev/zero of=/var/cache/swap/swap0 bs=1M count=512 chmod 0600 /var/cache/swap/swap0 mkswap /var/cache/swap/swap0 swapon /var/cache/swap/swap0 #这样就可以顺利启动mysql数据库 #将swap分区设置为开机启动: vi /etc/fstab #加入下列代码 /var/cache/swap/swap0 swap swap defaults 0 0
添加环境变量
export PATH=$PATH:/usr/local/mysql:/usr/local/mysql/bin
设置开机启动
chkconfig --add mysqld chkconfig mysqld on
mysql相关设置
#第一次进入需要输入初始密码:
mysql -uroot -p #初始root密码
mysql > set password=PASSWORD(''); #设置密码为空
mysql > use mysql;
mysql > update user set host = '%' where user = 'root'; #修改host
mysql > select user, host from user; #查看修改结果
mysql > flush privileges; #刷新设置
mysql > exit #退出
#在本地进行连接测试,结果如下图:

#安装成功
mysql安装汇总
安装包存放点:/usr/local/src/ mysql配置文件:/etc/my.cnf mysql数据信息目录:/usr/local/mysql/data/ mysql日志文件:/var/log/mariadb/mariadb.log mysqlpid文件:/var/run/mariadb/mariadb.pid(配置文件里是这样写的,实际根据服务器生成的具体文件为主,通过ps aux|grep mysql查看) 进入mysql数据库: mysql(无密码) mysql -u用户名 -p用户密码(有密码) 开启mysql: service mysqld start systemctl start mysqld 关闭mysql: service mysqld stop systemctl stop mysqld 重启mysql service mysqld restart syatemctl restart mysqld mysql状态 service mysqld status syatemctl status mysqld
postgresql安装
下载postgresql
cd /usr/local/src wget https://ftp.postgresql.org/pub/source/v10.1/postgresql-10.1.tar.gz tar -zxvf postgresql-10.1.tar.gz
postgresql编译安装
cd /postgresql-10.1 ./configure make && make install
添加postgres用户
adduser postgres
初始化postgresql数据库
cd /usr/local/pgsql mkdir data mkdir logs touch logs/pgsql.log #设置postgres数据信息和日志权限 chown -R postgres:postgres data chown -R postgres:postgres logs #初始化postgresql bin/initdb -D /usr/local/pgsql/data #根据提示执行 bin/pg_ctl start -D /usr/local/pgsql/data -l /usr/local/pgsql/logs/pgsql.log #成功启动出现下列信息 waiting for server to start.... done server started
进入postgresql数据库
bin/psql postgres=# \l #查看数据库信息 postgres=# \du #查看用户信息 postgres=# CREATE DATABASE root; #创建root数据库 postgres=# \l #查看创建结果 postgres=# CREATE ROLE root SUPERUSER #创建root超级用户 postgres=# ALTER ROLE root LOGIN #设置root用户登录权限 postgres=# \du #查看创建结果 退出postgresql数据库
修改postgresql配置文件
su - root cp /usr/local/src/postgresql-10.1/contrib/start-scripts/linux /etc/init.d/postgresql vi /etc/init.d/postgresql chmod +x /etc/init.d/postgresql 设置如下信息:

保存退出,测试如下命令: /etc/init.d/postgresql stop /etc/init.d/postgresql start /etc/init.d/postgresql restart 使用root用户进入postgresql数据库 /usr/local/pgsql/bin/psql 效果如下图:

postgresql安装成功
配置环境变量
cd /etc/profile export PATH=$PATH:/usr/local/pgsql/bin
配置开机启动
chkconfig --add postgresql chkconfig postgresql on
postgresql远程连接
vi /usr/local/pgsql/data/postgresql.conf # 修改如下:

# 保存退出 vi /usr/local/pgsql/data/pg_hba.conf # 修改如下:

# 保存退出 # 本地测试结果:

# 远程连接成功
postgresql安装总结
安装包存放点:/usr/local/src/
postgresql配置文件:/usr/local/pgsql/data/postgresql.conf
/usr/local/pgsql/data/pg_hba.conf
/etc/init.d/postgresql
postgresql数据目录:/usr/local/pgsql/data
postgresql日志文件:/usr/local/pgsql/logs/pgsql.log
postgresqlpid文件:/usr/local/pgsql/data/postmaster.pid
进入postgresql数据库:
psql # 已配置环境变量
/usr/local/pgsql/bin/psql # 未配置环境变量
启动postgresql
/etc/init.d/postgresql start
service postgresql start
systemctl start postgresql
停止postgresql
/etc/init.d/postgresql stop
service postgresql stop
systemctl stop postgresql
重启postgresql
/etc/init.d/postgresql restart
service postgresql restart
systemctl restart postgresql
安装php扩展
如果在之前编译php时没有加入--with-pdo-pgsql,--with-pgsql这两个模块,我们只需要在php编译文件里编译就可以使用postgresqlphp模块 # 安装pdo_pgsql模块 cd /usr/local/src/php-7.2.2/ext/pdo_pgsql/ /usr/local/php/bin/phpize ./configure --with-php-config=/usr/local/php/bin/php-config make && make install # 安装pgsql模块 cd /usr/local/src/php-7.2.2/ext/pgsql/ /usr/local/php/bin/phpize ./configure --with-php-config=/usr/local/php/bin/php-config make && make install service php-fpm restart # 重启php php -m # 查看模块列表 查看phpinfo()结果如下:

安装成功
其他文章
第一章:环境配置和nginx安装
第二章:php安装
第四章:python环境配置
今天关于《CentOS 7.2环境搭建实录(第三章:mysql安装和postgresql安装)》的内容介绍就到此结束,如果有什么疑问或者建议,可以在golang学习网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!
版本声明
本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
基于Web实现远程与硬件交互
- 上一篇
- 基于Web实现远程与硬件交互
- 下一篇
- Inner Join, Left Outer Join和Association的区别
查看更多
最新文章
-
- 数据库 · MySQL | 43分钟前 | MySQL · explain · 性能分析 · JSON执行计划 · 嵌套循环 · mysql 执行计划 EXPLAIN FORMAT=JSON nested_loop 查询成本
- MySQL EXPLAIN FORMAT=JSON 怎么查看嵌套循环成本
- 166浏览 收藏
-
- 数据库 · MySQL | 7小时前 |
- MySQL collation 不一致导致 JOIN 报错怎么统一
- 446浏览 收藏
-
- 数据库 · MySQL | 15小时前 |
- MySQL 递归 CTE 生成日期序列时为什么列类型会截断
- 104浏览 收藏
-
- 数据库 · MySQL | 18小时前 |
- MySQL 递归 CTE 遍历树数据时怎么防止无限循环
- 142浏览 收藏
-
- 数据库 · MySQL | 21小时前 |
- MySQL invisible index 如何安全观察索引下线影响
- 300浏览 收藏
-
- 数据库 · MySQL | 22小时前 | MySQL · 索引优化 · generated column · mysql 索引 优化器 生成列
- MySQL 生成列索引为什么没有被优化器使用
- 300浏览 收藏
-
- 数据库 · MySQL | 1天前 |
- MySQL 窗口函数取每组最新记录时如何处理并列时间
- 242浏览 收藏
-
- 数据库 · MySQL | 1天前 |
- MySQL JSON_VALUE 返回 NULL 时怎么区分缺少路径和空值
- 170浏览 收藏
-
- 数据库 · MySQL | 1天前 | MySQL · JSON查询 · JSON_TABLE · SQL技巧 · mysql JSON_TABLE FOR ORDINALITY JSON数组序号
- MySQL JSON_TABLE 的 FOR ORDINALITY 怎么保留数组原始序号
- 139浏览 收藏
-
- 数据库 · MySQL | 1天前 |
- MySQL 复制延迟升高时怎么区分 SQL 线程和 IO 线程
- 304浏览 收藏
查看更多
课程推荐
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 485次学习
查看更多
AI推荐
-
- H2O EvalGPT
- H2O EvalGPT是H2O.ai推出的开源LLM评估平台,提供详细的大模型性能排行榜、行业特定基准测试及A/B测试功能,助您快速选择最适合项目的高性能大语言模型。
- 61次使用
-
- SuperCLUE
- SuperCLUE是权威的中文大语言模型综合评测基准,涵盖语言理解、知识应用、AI Agent智能体及安全性等12项核心能力。通过多轮对话与客观测试,定期发布榜单与技术报告,为模型研发、优化及行业选型提供科学依据。
- 217次使用
-
- C-Eval
- 深入了解C-Eval中文评估套件,涵盖52个学科与4级难度。本文详解其功能特点、Zero-shot/Few-shot使用方法及代码示例,助您全面评测LLM中文理解与泛化能力。
- 145次使用
-
- AI Prompt Library
- 探索AI Prompt Library免费资源库,涵盖营销、写作及多场景AI提示词。兼容ChatGPT、Claude等工具,一键复制优化输出,提升工作效率。
- 79次使用
-
- Generrated
- Generrated汇集9300+张DALL·E生成图像及对应提示词,支持查看完整图集、对比DALL·E 2与3版本差异,是AI绘图新手学习Prompt设计与获取创作灵感的实用工具。
- 56次使用
查看更多
相关文章
-
- MySQL 明明加了索引,为什么查询还是很慢?先查这 6 个点
- 2026-06-27 374浏览
-
- golang MySQL实现对数据库表存储获取操作示例
- 2022-12-22 499浏览
-
- golang 基于 mysql 简单实现分布式读写锁
- 2023-01-07 384浏览
-
- Golang连接并操作PostgreSQL数据库基本操作
- 2023-01-12 240浏览
-
- 详解如何利用GORM实现MySQL事务
- 2023-01-07 184浏览

