Linux 安装MySql 5.7.21 操作步骤

一:到mysql官网下载最新的mysql包 mysql-5.7.21-linux-glibc2.12-x86_64
 
二:在linux /usr/local/中解压mysql压缩包 改名为mysql
cd /usr/local/
tar -xzvf mysql压缩包名
三:创建用户组mysql,创建用户mysql并将其添加到用户组mysql中,并赋予读写权限
groupadd mysql                   --创建mysql用户组组
useradd -r -g mysql mysql     --创建mysql用户并添加到mysql用户组中
chown -R mysql mysql/         --将mysql目录访问权限赋为myql用户
chgrp -R mysql mysql/          --改变mysql目录的用户组属于mysql组
注:
chmod 命令
用于改变文件或目录的访问权限。用户用它控制文件或目录的访问权限。

chgrp命令
改变文件或目录所属的组。

-R处理指定目录以及其子目录下的所有文件
 
:创建配置文件 保存并退出
vim /etc/my.cnf

#复制以下内容

[client]
port = 3306
socket = /tmp/mysql.sock

[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
#不区分大小写
lower_case_table_names = 1

sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

max_connections=5000

default-time_zone = '+8:00'
 
 五:初始化数据库
#先安装一下这个东东,要不然初始化有可能会报错
yum install libaio
#手动编辑一下日志文件,什么也不用写,直接保存退出
cd /var/log/

vim mysqld.log
:wq

chmod 777 mysqld.log
chown mysql:mysql mysqld.log

/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --lc_messages_dir=/usr/local/mysql/share --lc_messages=en_US
 
:查看初始密码
cat /var/log/mysqld.log

最后一行:root@localhost: 这里就是初始密码
 
:启动服务,进入mysql,修改初始密码,运行远程连接
cd /var/run/

mkdir mysqld

chmod 777 mysqld

cd mysqld

vim mysqld.pid

chmod 777 mysqld.pid

chown mysql:mysql mysqld.pid

/usr/local/mysql/support-files/mysql.server start

/usr/local/mysql/bin/mysql -uroot -p 你在上面看到的初始密码
 
# 以下是进入数据库之后的sql语句
 
1>重置密码
alert 重置密码:ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
  2>查看初始化的用户信息
  select host,user from mysql.user;
  3>修改root用的可以远程链接(localhost-->%)
  update mysql.user set host='%' where user='root';
  4>刷新
  flush privileges;
:开机自动启动
cd /usr/local/mysql/support-files

cp mysql.server /etc/init.d/mysqld

chkconfig --add mysqld
 
使用navicat输入用户密码连接mysql成功 完成!
 
 
 
鉴于很多童鞋反应,mysql5.7安装后出现无法启动,建立/var/run/mysqld 并赋权mysql用户解决了启动的问题,但是重启系统后又出现无法启动的问题,导致/var/run/mysqld 目录每次重启后都需要手动去创建并赋权mysql用户才能起到mysql,可以说,这是mysql5.7的一个小BUG,经过探索实践,现给出终极解决方案:
首先申明,修改my.cnf没有用。
之所以/var/run/mysqld 目录每次重启后都需要手动去创建,是因为/var/run/目录下建立文件夹是在内存中,故每次重启后内存被清空导致/var/run/mysqld 也被清除,从而导致无法启动mysql。
vim /etc/init.d/mysqld
找到下面字段
get_mysql_option mysqld datadir "/var/lib/mysql"
datadir="$result"
get_mysql_option mysqld socket "$datadir/mysql.sock"
socketfile="$result"
get_mysql_option mysqld_safe log-error "/var/log/mysqld.log"
errlogfile="$result"
get_mysql_option mysqld_safe pid-file "/var/run/mysqld/mysqld.pid"
mypidfile="$result"
修改为
get_mysql_option mysqld datadir "/var/lib/mysql"
datadir="$result"
get_mysql_option mysqld socket "$datadir/mysql.sock"
socketfile="$result"
get_mysql_option mysqld_safe log-error "/var/log/mysqld.log"
errlogfile="$result"
get_mysql_option mysqld_safe pid-file "/var/lib/mysql/mysqld.pid"
mypidfile="$result"
保存后退出,执行下面命令:
systemctl daemon-reload
  //重构进程
service mysqld start
   //启动mysql
chkconfig mysqld on
   //加入随系统启动启动
 
至此,解决。

猜你喜欢

转载自www.cnblogs.com/xiangjq/p/9244515.html