首页 > 数据库 >Linux下搭建mysql5.7数据库

Linux下搭建mysql5.7数据库

时间:2024-10-26 10:47:58浏览次数:1  
标签:opt log -- app Linux 数据库 mysql data mysql5.7

Linux下搭建mysql数据库

参考网址:https://www.cnblogs.com/dengshihuang/p/8029092.html

  1. 系统约定

系统版本:Centos7.3 Mysql版本:5.7

安装文件下载目录:/data/software

Mysql安装目录:/opt/app/mysql

数据库保存位置:/opt/app/mysql/data/mysql

日志保存位置:/opt/app/mysql/data/mysql/log/mysql

  1. 下载mysql

方式一:

在官网:http://dev.mysql.com/downloads/mysql/ 中,选择以下版本的mysql下载(可根据需要安装的mysql版本进行下载):

1620631135(1)--建议:在windows上使用迅雷下载,速度很快(我的是1M/s),然后用工具(Xftp)上传到 /data/software目录下;

方式二:

执行如下命名:

#mkdir -p /data/software

#cd /data/software

--下载安装包

#wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.33-linux-glibc2.12-x86_64.tar.gz

  1. 解压安装包到安装位置

#cd /data/software

--解压压缩包

#tar -xzvf /home/umpay/data/mysql-5.7.33-linux-glibc2.12-x86_64.tar.gz

1620634121(1)

--移动并修改文件名

#mv /home/umpay/data/mysql-5.7.33-linux-glibc2.12-x86_64 /opt/app/mysql

  1. 新建mysql用户、组及目录

#---新建一个msyql组

# useradd -d /opt/app/mysql -s /sbin/nologin mysql ---新建msyql用户禁止登录shell

chown -R mysql:mysql /opt/app/mysql

1620634734(1)

  1. 创建数据库数据存储目录

--/opt/app/mysql/data/mysql 数据仓库目录

# mkdir -p /opt/app/mysql/data/mysql

chown -R mysql:mysql /opt/app/mysql/data/mysql

  1. 修改系统配置文件
    1)自5.7.18之后就不在提供my-default.cnf文件,为了使用更丰富的参数设置,拷贝以下内容,并粘贴内容即可,注意需要创建以及mysql用户权限,使用chown赋权限,如下命令:

#创建sock目录和文件并授权

mkdir -p /opt/app/mysql/lib/mysql

touch /opt/app/mysql/lib/mysqlmysql.sock

chown -R mysql:mysql /opt/app/mysql/lib/mysql

#备份my.cnf文件

mv /etc/my.cnf /etc/my.cnfbak

vim /etc/my.cnf

[mysqld]

server_id=76

relay_log=mysql_relaylog

relay_log_index=mysql_relaylog.index

log-slave-updates=true

log_bin=binlog

log_bin_index=binlog.index

wait_timeout=604800

interactive_timeout=604800

long_query_time=1

slow_query_log=ON

slow_launch_time=2

max_connections=2048

back_log=128

key_buffer_size=128M

query_cache_size=128M

query_cache_type=1

query_cache_limit=50M

max_connect_errors=100

sort_buffer_size=3M

max_allowed_packet=32M

join_buffer_size=2M

thread_cache_size=200

innodb_buffer_pool_size=51200M

innodb_flush_log_at_trx_commit=1

innodb_log_buffer_size=1280M

innodb_log_file_size=128M

innodb_log_files_in_group=3

binlog_cache_size=20M

max_binlog_cache_size=51200M

max_binlog_size=512M

expire_logs_days=7

read_buffer_size=2M

read_rnd_buffer_size=2M

bulk_insert_buffer_size=8192M

character_set_server=utf8

log_bin_trust_function_creators=TRUE

basedir = /opt/app/mysql

datadir = /opt/app/mysql/data/mysql

port = 3306

socket = /opt/app/mysql/lib/mysql/mysql.sock

sql_mode='NO_AUTO_VALUE_ON_ZERO,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,PIPES_AS_CONCAT,ANSI_QUOTES'

#跳过mysql权限验证(解决登录报1045问题,在解决后需要再注释掉重启mysql)

#skip-grant-tables

#自动清理 30 天前的log文件,可根据需要修改

expire_logs_days=30

#查询缓存

explicit_defaults_for_timestamp=true

[mysqld_safe]

log-error = /opt/app/mysql/data/mysql/log/mysqld.log

pid-file = /opt/app/mysql/data/mysql/run/mysqld.pid

[client]

socket = /opt/app/mysql/lib/mysql/mysql.sock

2)

cp /opt/app/mysql/support-files/mysql.server /etc/init.d/mysql

vim /etc/init.d/mysql

修改以下内容:

  1. 执行安装

再次授权权限以保证无权限问题

chown mysql:mysql /opt/app/mysql/data/mysql/ -R

chown mysql:mysql /opt/app/mysql/ -R

进入bin目录下执行以下命令

cd /opt/app/mysql/

#初始化mysql

# bin/mysqld --initialize --user=mysql --basedir=/opt/app/mysql --datadir=/opt/app/mysql/data/mysql

#bin/mysql_ssl_rsa_setup --datadir=/opt/app/mysql/data/mysql

此处需要注意记录生成的临时密码,如上文结尾处的:#?Fch0-_dV*Z

##初始化如果报错可以将sql-mode配置更改进行尝试初始化

1、sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"

2、删除/opt/app/mysql/data/mysql/ 下所有文件

  1. 以下文件需要初始化mysql之后创建

#创建日志目录和文件并授权

mkdir /opt/app/mysql/data/mysql/log/

touch /opt/app/mysql/data/mysql/log/mysqld.log

#创建pid目录和文件并授权

mkdir /opt/app/mysql/data/mysql/run/

touch /opt/app/mysql/data/mysql/run/mysqld.pid

#授权(一定要执行)

chown mysql:mysql /opt/app/mysql/data/mysql/ -R

  1. 启动

启动前再次执行!!!!

chown mysql:mysql /opt/app/mysql/data/mysql/ -R

chown mysql:mysql /opt/app/mysql -R

/etc/init.d/mysql start

#提示以下则成功

[root@node1-jin mysql]# /etc/init.d/mysql start

Starting MySQL... SUCCESS!

#查看mysql进程

ps -ef |grep mysql

#如果提示以下需检查数据目录/opt/app/mysql/data/mysql的权限,

Starting MySQL.......... ERROR! The server quit without updating PID file (/opt/app/mysql/data/mysql/node1-jin.pid).

#执行此命令解决

chown mysql:mysql /opt/app/mysql/data/mysql/ -R

  1. 登录mysql

#mysql -hlocalhost -uroot -p

 --如果出现:-bash: mysql: command not found

 --就执行: # ln -s /opt/app/mysql/bin/mysql /usr/bin --没有出现就不用执行

--输入第七步生成的root临时密码

--初次修改密码

mysql> flush privileges;

Query OK, 0 rows affected (0.18 sec)

mysql>set password for root@localhost=password('umpay2010');

mysql> flush privileges; #立即生效

--设置root账户的host地址(修改了才可以远程连接,不安全不建议开放)

mysql>grant all privileges on *.* to 'root'@'%' identified by 'root';

update user set user.Host=’%’ where user.User=’root’;

mysql>flush privileges;

--查看表

mysql> use mysql;

mysql> select host,user from user;

--这里就可以使用远程连接测试了;

  1. 添加开机自启

vim /etc/rc.d/rc.local

/etc/init.d/mysql start

chmod +x /etc/rc.d/rc.local

标签:opt,log,--,app,Linux,数据库,mysql,data,mysql5.7
From: https://www.cnblogs.com/xiaobaijin/p/18503748

相关文章

  • redis数据库操作指令
    一、数据库操作指令2、redis中库说明对于一个redis服务而言,包含默认有16个数据库给我们使用,从0开始编号,共15号数据库,默认使用的是0号数据库切换库,select库号举例:使用1号库:select1库和库之间数据不共享库和库之间的键可以重名2、redis中清空库的指令清空当前库flush......
  • Mysql 安装(yum)Linux
    yum安装mysql清理环境yumerasemariadbmariadb-servermariadb-libsmariadb-devel-y#移除mariadb的相关组件userdel-rmysql#删除mysql用户rm-rf/etc/my*#删除etc下的配置文件rm-rf/var/lib/mysql#删除var下的配置文件 下载yum源的rpm包(mysql5.7.41......
  • Linux下搭建sftp服务
    1.创建sftp组groupaddsftpcat/etc/group2.创建一个sftp用户zyfdsftp并加入到创建的sftp组中,同时修改zyfdsftp用户的密码useradd-gsftp-s/sbin/nologin-d/home/ftpuserzyfdsftppasswdzyfdsftp3.新建/sftp/zyfdsftp目录(需要在/下单独创建目录),并将它指定为......
  • 分布式数据库的魔力
    分布式数据库的魔力在这个信息爆炸的时代,你是否曾好奇过,支撑着我们日常生活中各类服务的那些看似“无形”的科技背后,究竟有怎样的秘密?分布式数据库,就是其中一个重要的谜底。它不仅让数据存储和管理变得更加灵活、聪明,还为企业解决了许多棘手的问题。在这篇文章中,我们将一起......
  • 基于SpringBoot + Vue + MySQL 实现平行志愿录取系统(数据库设计&毕业设计)
    一、需求分析        平行志愿录取系统是一种用于高等院校招生录取的志愿填报和录取方式,旨在提高录取的公平性和科学性,确保考生能够在选择志愿时有更大的灵活性和机会。下面详细分析平行志愿录取系统的定义、功能以及其优缺点。志愿录取系统功能:志愿填报:考生可以......
  • 【MySQL】数据库事务管理
    W...Y的主页......
  • caffe为什么要使用lmdb数据库
    caffe要使用lmdb数据库的原因有:1、性能高;2、安全性好;3、空间利用率高。LMDB采用内存映射(Memory-Mapped)的方式,可以快速读取和写入大量数据。Caffe选择LMDB作为数据存储的方式,主要是因为LMDB的高性能和高空间利用率。在深度学习训练过程中,需要频繁读取和写入大量数据,LMDB的内存映射......
  • Linux 权限的理解
    内容摘要本文内容包括shell的运行原理,包括外壳程序的原理、理解、和意义,以及从两个方面对于权限的理解(人和事物的属性)、修改文件的权限,包括修改文件的拥有者、修改文件拥有者所在的组的用户以及修改文件的三类用户的访问文件的权限、最终权限与起始权限和umask的关系、以及粘......
  • oracle数据库---PL/SQL、存储函数、存储过程、触发器、定时器job、备份
    PL/SQL什么是PL/SQLPL/SQL(Procedure Language/SQL)是Oracle对sql语言的过程化扩展,指在SQL命令语言中增加了过程处理语句(如分支、循环等),使SQL语言具有过程处理能力。把SQL语言的数据操纵能力与过程语言的数据处理能力结合起来,使得PLSQL面向过程但比过程语言简单......
  • 书生大模型实战营第4期系列课程——1.1 InternStudio开发机和Linux基础
    书生大模型(InternLM2.5)是由上海人工智能实验室推出的书生·浦语系列模型的全新版本。相较于上一代,InternLM2.5全面增强了在复杂场景下的推理能力,支持1M超长上下文,能自主进行互联网搜索并从上百个网页中完成信息整合。开源链接:https://github.com/InternLM/InternLM书生大......