Linux安装MySQL5.7.36

环境版本

Linux:Centos 7 2009 x86_64

Linux用户:root

Linux初始路径:/root

MySQL:mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz

SSH工具:Xshell 7,Xftp 7

卸载旧版本

我安装Centos一直都是最小化安装,缺什么装什么,但有的人不是,所以防患于未然,先卸载系统本身的mysql,此卸载方式不适用与使用二进制安装包安装的方式,只适用于yum安装和rpm安装的方式

命令检查是否已经安装过mysql,执行命令。如果没有任何显示信息,则说明未安装,如果存在信息,则执行卸载。

# 查看mysql服务的状态,如果系统提示如下信息则说明没有mysql服务:
# Redirecting to /bin/systemctl status mysqld.service
# Unit mysqld.service could not be found.
# 如果是service信息输出则执行service mysqld stop或者service mysql stop命令停止MySQL服务
service mysqld status
# service mysqld stop
# service mysql stop

# 检测系统是否自带安装 mysql,如果没有信息输出则说明没有安装
rpm -qa | grep mysql

# 如果有信息输出,则删除安装的mysqlL
# 普通删除模式
rpm -e mysql
# 如果使用上面命令删除时,提示有依赖的其它文件,则用该命令只删除mysql套件
rpm -e --nodeps mysql

# 同时检查/etc/my.cnf配置文件,或者/etc/mysql目录,有就rm删除他们。
rm -rf /etc/my.cnf /etc/mysql

Linux依赖环境

mysql在不同版本会有一些不同的依赖,为了避免后面奇奇怪怪的错误,最好都安装上。

yum install libaio libaio-devel numactl-libs wget vim -y
  • SLES 11:从 MySQL 5.7.19 开始,Linux Generic tarball 包格式为 EL6 而不是 EL5。作为副作用,MySQL 客户端 bin/mysql需要 libtinfo.so.5.(也就是在Linux上做开发的时候安装mysql客户端,只安装服务器端可以忽略)
    • 一种解决方法是创建一个符号链接,例如ln -s libncurses.so.5.6 /lib64/libtinfo.so.5在 64 位系统上或ln -s libncurses.so.5.6 /lib/libtinfo.so.5在 32位系统上位系统。

MySQL二进制安装包获取

  • 用wget从网上下载
# MySQL官方源地址,因为是国外源,非常慢,通常500Kb/s左右
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz

# 163网易镜像地址,国内源,非常快
wget https://mirrors.163.com/mysql/Downloads/MySQL-5.7/mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz
  • 利用Xftp上传本地压缩包,happy~~

总之,最后在/root目录下我们会得到这样一个压缩包

安装包的处置

# 解压安装包
tar -zxvf mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz
# 移动并重命名
mv mysql-5.7.36-linux-glibc2.12-x86_64 /usr/local/mysql
# 进入目标目录
cd /usr/local/mysql

输入ll,你会看到如下目录:

创建MySQL用户和组

groupadd mysql

# 因为用户仅用于所有权目的,而不是登录目的,所以useradd命令使用 -r和-s /bin/false选项
useradd -r -g mysql -s /bin/false mysql

创建指向安装目录的符号链接

# 该ln命令创建一个指向安装目录的符号链接。这使你可以更轻松地将其称为/usr/local/mysql
ln -s /usr/local/mysql mysql

# 同时为了避免在使用 MySQL 时总是输入客户端程序的路径名,可以将/usr/local/mysql/bin 目录添加到PATH变量中
vim /etc/bashrc
# 在文件头部加上如下代码后保存退出
export PATH=$PATH:/usr/local/mysql/bin
# 刷新文件,使配置生效
source /etc/bashrc


创建相应目录并赋予合适权限

mkdir -p data log
chown mysql:mysql -R data log
chmod 750 data log
# 如果你挂载了额外的硬盘,自己手动改写路径

然后你会得到这样一个目录,注意看data和log文件夹的权限、属性

配置my.cnf配置文件

vim /etc/my.cnf

配置文件内容以及详解如下

[mysqld]
# 设置能访问数据库的ip地址 0.0.0.0代表无限制
bind-address=0.0.0.0
# mysqld 服务端监听端口
port=3306
# mysql数据库运行所使用的用户
user=mysql
# mysql安装位置
basedir=/usr/local/mysql
# 数据库存放位置
datadir=/usr/local/mysql/data
# 本地连接的 socket 套接字
socket=/tmp/mysql.sock
# 错误日志存放位置
log_error=/usr/local/mysql/log/mysql.err
# 错误日志等级
log_warnings = 2
# pid-file文件位置 当MySQL实例启动时,会将自己的进程ID写入一个文件中——该文件即为pid文件
pid_file=/usr/local/mysql/mysql.pid
# 默认字符集设置,mysql无脑utf8mb4就对了,别杠,杠就是你对,别问,问就是不知道
character_set_server=utf8mb4
# 数据库字符集对应排序规则,需要与字符集一一对应
collation_server = utf8mb4_general_ci
# 设置 client 连接 mysql 时的字符集,防止乱码
init_connect='SET NAMES utf8mb4'
# 是否对 sql 语句大小写敏感,1 表示不敏感
lower_case_table_names = 1
# 禁止mysql使用软连接
symbolic_links=0

# https://www.cnblogs.com/zqifa/p/mysql-3.html 自己去看
explicit_defaults_for_timestamp=true

: 进入命令模式 x 保存退出

初始化mysql

mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql --initialize

查看密码

cat /usr/local/mysql/log/mysql.err

设置MySQL服务

设置开机自启动

# 将mysql.server放置到/etc/init.d/mysql中
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
# 赋予可执行权限
chmod +x /etc/init.d/mysql
# 添加服务
chkconfig --add mysql
# 显示服务列表
chkconfig --list

# 如果看到mysql的服务,并且3,4,5都是开的话则成功,如果是关,则键入
chkconfig --level 345 mysql on

# 有些人设置的mysqld,都一样,服务名字而已

启动MySQL

service mysql start

如图所示则是启动成功,如果你严格按照我的步骤来,肯定不会报错,因为我都是一边写一边复制代码进Xmysql执行的,报错的自行百度错误

查看mysql进程

ps -ef|grep mysql

我擦嘞,为什么会有这么多?我之前看别人装的时候只有最下面一条的,可能是我的配置文件配置的有点多罢 0.0

登陆MySQL,使用前面那个随机生成的密码

注意!这个密码只能登录一次,登录后不立马修改密码的话,这个密码就会失效!

如果你不慎已经退出来了! 用我们刚刚查看初始随机密码的命令:cat /usr/local/mysql/log/mysql.err 再看一次!mysql在你使用初始密码登录退出并且没有修改初始密码的情况下,会再一次生成密码

修改root密码

SET PASSWORD = PASSWORD('123456');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES;

验证刚刚改的密码是否可行

远程连接

root用户是默认不允许远程连接的,如果你现在远程连接,会报如下错误:

解决办法:

  • 本地(Linux服务器上)root用户登录mysql
  • 输入以下sql命令
use mysql
# 使root能再任何host访问
update user set host = '%' where user = 'root'; 
FLUSH PRIVILEGES;

Ok


推荐这些文章:

mysql登录密码问题

问题
使用sql命令将root密码更改了,现在登录不上去了。我也不知道密码修改成啥了。有什么办法恢复吗?

最佳回答
参考园子里的博文:MySQL root密码忘记,原来还有更优雅的解法

...

十分钟部署属于自己的博客网站

十分钟部署属于自己的博客网站
[mysqld]
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
log-error=/usr/local/mysql/logs/mysqld.log
pid-file=/usr/local/mysql/logs/mysqld.pid
mkdir /usr/local/mysql/data
mkdir /usr/local/mysql/etc
mkdir /usr/local/mysql/logs
useradd mysql
cat > /usr/local/mysql/etc/my.cnf <...

ubuntu18.04_x86_64 安装MySQL5.6

1.先下载5.6.tar.gz 包
https://downloads.mysql.com/archives/community/
cd /usr/local
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.6.51-linux-glibc2.12-x86_64.tar.gz

2.安装依赖
sudo apt-get install libaio1 # install library

3.解压缩到/usr/local
$> sudo groupadd mysql
$> sudo useradd -r...

mysql安装配置(一)

网上下载MySQL
安装
tar -xvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz -C /usr/local/
mv mysql-5.7.24-linux-glibc2.12-x86_64/ mysql
cd /usr/local/mysql/
mkdir data
touch /usr/local/mysql/mysql.log
touch /usr/local/mysql/mysql.sock
cp support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysq...

2、在linux部署mysql

在linux部署mysql
一、准备mysql包

首先先通过工具将mysql包上传到linux中

创建特殊的账号:叫做mysql(所属组mysql)

[root@com-jun]# useradd -r -s /sbin/nologin mysql

在/usr/local目录下创建新的文件夹:mysql,解压mysql压缩包,解压到/usr/local/mysql

[root@com-jun]# tar -zxf mysql-5.6.44-linux-glibc2.12-x86_64.tar.gz

更改/usr/local/mysql目录权限,更改文件拥有者与所属组都...

CentOS卸载MySQL

开始卸载
1、查看安装的mysql
mysql --version
rpm -qa|grep -i mysql

2、查看mysql服务启用状态
systemctl status mysqld.service

3、停止mysql服务
systemctl stop mysqld
systemctl status mysqld.service

4、开始卸载,一共5个包,先卸载谁都可以,逐个卸载,直到5个全部卸载
yum remove mysql-community-server.x86_64

查询没有了,说明全部卸载完了
rpm -qa|grep -i mysql

5、删除mysql相关...

linux下部署mysql8.0

一、上传安装包到Linux

1、传路径:/usr/local/

2、解压缩链接:https://pan.xunlei.com/s/VMzY80ky4m31C7StfrT_3-uuA1提取码:exsd
tar xvf mysql-8.0.17-linux-glibc2.12-x86_64.tar.xz
3、重命名

mv mysql-8.0.17-linux-glibc2.12-x86_64 mysql

二、安装配置

1、修改 vi /etc/my.cnf

[client]
port=3306
socket=/var/lib/mysql/mysql.sock

[mysql...

Centos 卸载 MySQL

1 [root@mongodb-poc-0003 ~]# cat /etc/redhat-release
2 CentOS Linux release 8.0.1905 (Core)
3 [root@mongodb-poc-0003 ~]# rpm -qa | grep -i mysql
4 [root@mongodb-poc-0003 ~]# whereis mysql
5 mysql: /usr/local/mysql
6 [root@mongodb-poc-0003 ~]# chkconfig --list | grep -i mysql
7
8 Note: Th...

Mysql(文件夹)搭建

一、下载mysql安装包
二、解压
解压后的文件夹放入 /usr/local/
三、创建Mysql用户和组

groupadd mysql
useradd -r -g mysql mysql

四、更改属组和属主

chown -R mysql:mysql /usr/local/mysql

五、创建存放数据库数据的文件

mkdir data(在Mysql文件内)

六、初始化

1、安装依赖包
yum install libaio
2、进行初始化
/usr/local/mysql/bin/mysqld --user=mysql --basedir=/usr/local/mys...

centos-mysql安装步骤

mysql安装:2.检查系统是否安装mariadb,是否安装MySQL rpm -qa|grep mariadb ,rpm -qa|grep mysql 3.如果安装就卸载 rpm -e mariadb-libs-5.5.60-1.el7_5.x86_64 --nodeps# --nodeps(免依赖),rpm安装:-ivh(安装) -uvh(更新安装) --force (强制安装)4.解压安装包: tar zxvf mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz -C /usr/local/5.改名字 mv /usr/local/mysq...

文章标题:Linux安装MySQL5.7.36
文章链接:https://www.dianjilingqu.com/51002.html
本文章来源于网络,版权归原作者所有,如果本站文章侵犯了您的权益,请联系我们删除,联系邮箱:saisai#email.cn,感谢支持理解。
THE END
< <上一篇
下一篇>>