热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

CentOS下MySQL服务搭建-centos

CentOS下MySQL服务搭建是千自学中一篇关于centos的文章简介:1.卸载旧MySQL查看rpm包rpm-qa|grepmysql如果存在,使用如下命令卸载rpm-e查找是否存在mysql 相关

1. 卸载旧 MySQL
  • 查看 rpm 包

rpm-qa | grep mysql

如果存在,使用如下命令卸载

rpm -e
  • 查找是否存在mysql 相关目录

find / -name mysql
  • 卸载系统自带 mariadb

[root@localhost ~]# rpm -qa|grep mariadb
mariadb-libs-5.5.68-1.el7.x86_64
mariadb-libs-5.5.64-1.el7.x86_64
[root@localhost ~]# rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64 mariadb-libs-5.5.64-1.el7.x86_64
[root@localhost ~]# rm -rf /etc/my.cnf

2. 创建 mysql 用户和组
  • 检查有无创建过 mysql 用户组,如果没有创建

# 检查mysql 用户组是否存在
[root@localhost ~]# cat /etc/group | grep mysql
[root@localhost ~]# cat /etc/passwd | grep mysql
# 创建mysql 用户组和用户
[root@localhost ~]# groupadd mysql
[root@localhost ~]# useradd -r -g mysql mysql

3. 安装 MySQL
  • 下载

从官网下载 MySQL

https://dev.mysql.com/downloads/mysql/

使用如下命令下载 MySQL

wget https://cdn.mysql.com/archives/mysql-5.7/mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz
  • 安装

下载下来是一个gz的压缩包,使用如下命令解压

tar -zxvf mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz

将解压的文件重命名,并移动到/usr/local目录

mv mysql-5.7.36-linux-glibc2.12-x86_64 /usr/local/mysql5.7

更改 mysql5.7 目录下所有文件夹所属的用户、用户组、以及权限

chown -R mysql:mysql /usr/local/mysql5.7
chmod -R 755 /usr/local/mysql5.7
  • 创建 MySQL 相关目录

mkdir -p /usr/local/mysql5.7/{data,logs,tmp}
# 更改文件夹所属
chown -R mysql.mysql /usr/local/mysql5.7/data
chown -R mysql.mysql /usr/local/mysql5.7/logs
chown -R mysql.mysql /usr/local/mysql5.7/tmp
  • 创建 MySQL 配置文件 my.cnf

简单模板如下

[client]
port = 3306
socket = /usr/local/mysql5.7/tmp/mysql.sock
[mysqld]
user = mysql
basedir = /usr/local/mysql5.7
datadir = /usr/local/mysql5.7/data
port = 3306
socket = /usr/local/mysql5.7/tmp/mysql.sock
pid-file = /usr/local/mysql5.7/tmp/mysqld.pid
tmpdir = /usr/local/mysql5.7/tmp
skip_name_resolve = 1
symbolic-links=0
max_cOnnections= 2000
group_concat_max_len = 1024000
sql_mode = NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
lower_case_table_names = 1
log_timestamps=SYSTEM
character-set-server = utf8
interactive_timeout = 1800
wait_timeout = 1800
max_allowed_packet = 32M
binlog_cache_size = 4M
sort_buffer_size = 2M
read_buffer_size = 4M
join_buffer_size = 4M
tmp_table_size = 96M
max_heap_table_size = 96M
max_length_for_sort_data = 8096
#logs
server-id = 1003306
log-error = /usr/local/mysql5.7/logs/error.log
slow_query_log = 1
slow_query_log_file = /usr/local/mysql5.7/logs/slow.log
long_query_time = 3
log-bin = /usr/local/mysql5.7/logs/binlog
binlog_format = row
expire_logs_days = 15
log_bin_trust_function_creators = 1
relay-log = /usr/local/mysql5.7/logs/relay-bin
relay-log-recovery = 1
relay_log_purge = 1
#innodb
innodb_file_per_table = 1
innodb_log_buffer_size = 16M
innodb_log_file_size = 256M
innodb_log_files_in_group = 2
innodb_io_capacity = 2000
innodb_io_capacity_max = 4000
innodb_flush_neighbors = 0
innodb_flush_method = O_DIRECT
innodb_autoinc_lock_mode = 2
innodb_read_io_threads = 8
innodb_write_io_threads = 8
innodb_buffer_pool_size = 2G
  • 配置 mysql.server

cd /usr/local/mysql5.7/support-files
cp mysql.server /etc/init.d/mysql
vi /etc/init.d/mysql
# 修改目录位置
basedir=/usr/local/mysql5.7
datadir=/usr/local/mysql5.7/data
# 注册开机启动服务
chkconfig --add mysql
chkconfig --list
  • 添加 mysql 到环境变量

把/usr/local/mysql5.7/bin添加到PATH环境变量中

添加的内容export PATH=$PATH:/usr/local/mysql5.7/bin

vi /etc/profile
source /etc/profile
  • 初始化 mysql

[root@localhost ~]# /usr/local/mysql5.7/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql5.7 --datadir=/usr/local/mysql5.7/data
# 临时密码保存在 errlog 中;获取临时密码
[root@localhost ~]# more /usr/local/mysql5.7/logs/error.log | grep password
2022-04-07T23:28:28.894994+08:00 1 [Note] A temporary password is generated for root@localhost: w(fYri(tk8Dj
  • 启动 mysql 服务,并修改root用户密码

# 启动mysql服务
[root@localhost ~]# service mysql start
Starting MySQL... SUCCESS!
# 使用初始密码登录mysql服务 并修改密码
[root@localhost ~]# mysql -uroot -p
alter user 'root'@'localhost' identified by 'root';
flush privileges;

 



推荐阅读
  • 1Lock与ReadWriteLock1.1LockpublicinterfaceLock{voidlock();voidlockInterruptibl ... [详细]
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • 本文介绍了Oracle数据库中tnsnames.ora文件的作用和配置方法。tnsnames.ora文件在数据库启动过程中会被读取,用于解析LOCAL_LISTENER,并且与侦听无关。文章还提供了配置LOCAL_LISTENER和1522端口的示例,并展示了listener.ora文件的内容。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • Spring框架《一》简介
    Spring框架《一》1.Spring概述1.1简介1.2Spring模板二、IOC容器和Bean1.IOC和DI简介2.三种通过类型获取bean3.给bean的属性赋值3.1依赖 ... [详细]
  • Spring源码解密之默认标签的解析方式分析
    本文分析了Spring源码解密中默认标签的解析方式。通过对命名空间的判断,区分默认命名空间和自定义命名空间,并采用不同的解析方式。其中,bean标签的解析最为复杂和重要。 ... [详细]
  • imx6ull开发板驱动MT7601U无线网卡的方法和步骤详解
    本文详细介绍了在imx6ull开发板上驱动MT7601U无线网卡的方法和步骤。首先介绍了开发环境和硬件平台,然后说明了MT7601U驱动已经集成在linux内核的linux-4.x.x/drivers/net/wireless/mediatek/mt7601u文件中。接着介绍了移植mt7601u驱动的过程,包括编译内核和配置设备驱动。最后,列举了关键词和相关信息供读者参考。 ... [详细]
  • 本文介绍了Windows操作系统的版本及其特点,包括Windows 7系统的6个版本:Starter、Home Basic、Home Premium、Professional、Enterprise、Ultimate。Windows操作系统是微软公司研发的一套操作系统,具有人机操作性优异、支持的应用软件较多、对硬件支持良好等优点。Windows 7 Starter是功能最少的版本,缺乏Aero特效功能,没有64位支持,最初设计不能同时运行三个以上应用程序。 ... [详细]
  • 本文介绍了将mysql从5.6.15升级到5.7.15的详细步骤,包括关闭访问、备份旧库、备份权限、配置文件备份、关闭旧数据库、安装二进制、替换配置文件以及启动新数据库等操作。 ... [详细]
  • 如何查询zone下的表的信息
    本文介绍了如何通过TcaplusDB知识库查询zone下的表的信息。包括请求地址、GET请求参数说明、返回参数说明等内容。通过curl方法发起请求,并提供了请求示例。 ... [详细]
  • Android系统源码分析Zygote和SystemServer启动过程详解
    本文详细解析了Android系统源码中Zygote和SystemServer的启动过程。首先介绍了系统framework层启动的内容,帮助理解四大组件的启动和管理过程。接着介绍了AMS、PMS等系统服务的作用和调用方式。然后详细分析了Zygote的启动过程,解释了Zygote在Android启动过程中的决定作用。最后通过时序图展示了整个过程。 ... [详细]
  • 解决Sharepoint 2013运行状况分析出现的“一个或多个服务器未响应”问题的方法
    本文介绍了解决Sharepoint 2013运行状况分析中出现的“一个或多个服务器未响应”问题的方法。对于有高要求的客户来说,系统检测问题的存在是不可接受的。文章详细描述了解决该问题的步骤,包括删除服务器、处理分布式缓存留下的记录以及使用代码等方法。同时还提供了相关关键词和错误提示信息,以帮助读者更好地理解和解决该问题。 ... [详细]
  • 本文介绍了5个基本Linux命令行工具的现代化替代品,包括du、top和ncdu。这些替代品在功能上进行了改进,提高了可用性,并且适用于现代化系统。其中,ncdu是du的替代品,它提供了与du类似的结果,但在一个基于curses的交互式界面中,重点关注占用磁盘空间较多的目录。 ... [详细]
  • php缓存ri,浅析ThinkPHP缓存之快速缓存(F方法)和动态缓存(S方法)(日常整理)
    thinkPHP的F方法只能用于缓存简单数据类型,不支持有效期和缓存对象。S()缓存方法支持有效期,又称动态缓存方法。本文是小编日常整理有关thinkp ... [详细]
author-avatar
星控-集中营_220
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有