美文网首页Linux
一,二进制部署mysql-5.7.26

一,二进制部署mysql-5.7.26

作者: 会倒立的香飘飘 | 来源:发表于2021-05-26 16:59 被阅读0次

二进制部署mysql

1,创建目录
 mkdir -p /app/
#将mysql二进制软件上传至此目录
2,解压软件包并改名为mysql
tar xf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.7.26-linux-glibc2.12-x86_64 mysql

[root@mister_f ~]# ll /app/mysql/
total 52
drwxr-xr-x  2 root root   4096 May  8 16:24 bin
-rw-r--r--  1 7161 31415 17987 Apr 13  2019 COPYING
drwxr-xr-x  2 root root   4096 May  8 16:24 docs
drwxr-xr-x  3 root root   4096 May  8 16:24 include
drwxr-xr-x  5 root root   4096 May  8 16:24 lib
drwxr-xr-x  4 root root   4096 May  8 16:24 man
-rw-r--r--  1 7161 31415  2478 Apr 13  2019 README
drwxr-xr-x 28 root root   4096 May  8 16:24 share
drwxr-xr-x  2 root root   4096 May  8 16:24 support-files

3,修改环境变量
vim /etc/profile
source /etc/profile
4,创建mysql用户和创建相关目录并修改权限
 useradd mysql 
 mkdir /data/mysql -p 
 chown -R mysql.mysql /app/*
 chown -R mysql.mysql /data/*
5,初始化数据库
 mysqld --initialize-insecure  --user=mysql --basedir=/app/mysql --datadir=/data/mysql
6,生成mysql配置文件
vim /etc/my.cnf
[mysqld]
user=mysql
basedir=/app/mysql
datadir=/data/mysql
server_id=6
port=3306
socket=/tmp/mysql.sock
[mysql]
socket=/tmp/mysql.sock
prompt=3306 [\\d]>
7,使用systemd管理mysql
vim /etc/systemd/system/mysqld.service 
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/app/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE = 5000
8,启动数据库
systemctl start mysqld
[root@mister_f ~]# mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.7.26 MySQL Community Server (GPL)

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)

mysql> 

9,设置用户密码
[root@mister_f ~]# mysqladmin -uroot -p password 123
10,分析数据库无法启动思路
without updating PID 类似错误 
查看日志: 
    /data/mysql/data/主机名.err 
    [ERROR] 上下文
可能情况:
    /etc/my.cnf 路径不对等
    /tmp/mysql.sock文件修改过 或 删除过 
    数据目录权限不是mysql
    参数改错
11,忘记本地管理员用户密码怎么样修改

两个核心参数

--skip-grant-tables  #跳过授权表,没有用户名和密码的验证
--skip-networking   #跳过远程登录
一般使用这两个参数有两种方式
1,添加到my.cnf的配置文件里
2,使用mysqld_safe临时方式

停止数据库

systemctl stop mysqld

启动数据库到维护模式

mysqld_safe --skip-grant-tables --skip-networking &
#启动后数据库就么有密码了,但是只能在本地连接不能远程连接
mysql> select user,host,authentication_string from mysql.user;
+---------------+-----------+-------------------------------------------+
| user          | host      | authentication_string                     |
+---------------+-----------+-------------------------------------------+
| root          | localhost | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| mysql.session | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
| mysql.sys     | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |
+---------------+-----------+-------------------------------------------+
3 rows in set (0.00 sec)
#mysql5.7是使用的authentication_string来存储密码的

登录数据库修改密码

mysql> grant all on *.*  to root@'localhost' identified by '123';
ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
#由于关闭了授权的功能,所以要手工的刷新一下;
mysql> flush privileges;
Query OK, 0 rows affected (0.02 sec)

mysql> grant all on *.*  to root@'localhost' identified by '123';
Query OK, 0 rows affected, 1 warning (0.00 sec)
或者使用alter语句
mysql> alter user root@'localhost' identified by '1234';
Query OK, 0 rows affected (0.00 sec)

正常关闭重启数据库恢复正常

[root@mister_f ~]# systemctl restart mysqld
[root@mister_f ~]# mysql -p123
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.7.26-log MySQL Community Server (GPL)

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 

相关文章

  • 一,二进制部署mysql-5.7.26

    二进制部署mysql 1,创建目录 2,解压软件包并改名为mysql 3,修改环境变量 4,创建mysql用户和创...

  • 二进制部署k8s集群

    部署k8s有多种方式,本章我们采取二进制的部署方式来部署k8s集群,二进制部署麻烦点,但是可以在我们通过部署各个组...

  • k8s kubeadm部署过程

    先使用二进制部署了几次,全部失败了,原因还未找到,所以使用kubeadm部署先用起来再说。使用二进制部署时,老是出...

  • Helm3 快速入门 —— 2、Helm3 安装部署

    第2章、Helm3 安装部署 一、各环境安装部署 1、Linux 1)二进制包安装 1⃣️ 下载二进制包 2⃣️ ...

  • kubernates-部署

    kubernates 部署方式有多种,有二进制部署方式、kubeadm等部署,学习我采用kuberadm快速进行部...

  • 04.MySQL集群

    一、软件安装部署(单机) 01.目录规划 MySQL版本:5.7.26安装方式:二进制安装部署平台:CentOS ...

  • 电商高并发秒杀之Nginx反向代理负载均衡

    1. 部署Nginx OpenResty 安装部署NginxOpenResty将许多配置编译成了一个二进制包,内部...

  • Kubernetes 1.21.2 高可用二进制部署

    花了2周业余时间研究K8s的部署,从最简单的rancher部署,到kubeadm部署,再到二进制部署,因为是运维苦...

  • Xcode - Target 设置-General

    Target (一)General ----通用选项 (标识,签名,部署,icon,添加库,二进制文件) (...

  • 阿里云CentOS部署Node.js环境

    选择以下任意一种方法部署Node.js环境。使用二进制文件安装该部署过程使用的安装包是已编译好的二进制文件。解压之...

网友评论

    本文标题:一,二进制部署mysql-5.7.26

    本文链接:https://www.haomeiwen.com/subject/blgudltx.html