共计 4312 个字符,预计需要花费 11 分钟才能阅读完成。
环境: 虚拟机 +CentOS 7
1. 下载二进制包,下面 mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz 链接是官网
cd /usr/local/src
wget https:
//dev
.mysql.com
/get/Downloads/MySQL-5
.7
/mysql-5
.7.19-linux-glibc2.12-x86_64.
tar
.gz
2. 解压,改名
[root@beta src]# tar zxvf mysql-
5.7
.
19
-linux-glibc2.
12
-x86_64.tar.gz
[root@beta src]# ls
index.html?id=
471614
mysql-
5.7
.
19
-linux-glibc2.
12
-x86_64 mysql-
5.7
.
19
-linux-glibc2.
12
-x86_64.tar.gz
[root@beta src]# mv mysql-
5.7
.
19
-linux-glibc2.
12
-x86_64 /usr/local/mysql
3. 初始化
[root@beta mysql]# useradd -M -s /sbin/nologin mysql
[root@beta mysql]# ls
bin COPYING docs
include
lib man README share support-files
[root@beta mysql]# mkdir -p /usr/local/mysql/data/mysql
[root@beta mysql]# chown mysql /usr/local/mysql/data/mysql
下面这步注意最后一句:
[root@beta mysql]# ./bin/mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data/mysql
2017
-
09
-27T03:
44
:
47
.999985Z
0
[Warning] TIMESTAMP
with
implicit DEFAULT value
is
deprecated. Please
use
--explicit_defaults_for_timestamp server option (see documentation
for
more details).
2017
-
09
-27T03:
44
:
49
.011240Z
0
[Warning] InnoDB: New log files created, LSN=
45790
2017
-
09
-27T03:
44
:
49
.180334Z
0
[Warning] InnoDB: Creating foreign key constraint system tables.
2017
-
09
-27T03:
44
:
49
.245777Z
0
[Warning] No existing UUID has been found, so we assume that
this
is
the first time that
this
server has been started. Generating a
new
UUID: 3649ce8c-a336-11e7-a43f-000c292b2832.
2017
-
09
-27T03:
44
:
49
.266053Z
0
[Warning] Gtid table
is
not ready to be used. Table
'mysql.gtid_executed'
cannot be opened.
2017
-
09
-27T03:
44
:
49
.268172Z
1
[Note] A temporary password
is
generated
for
root@localhost: ADB&yGx-d8ab
ADB&yGx-d8ab 是密码
接着执行:
[root@beta mysql]# ./bin/mysql_ssl_rsa_setup --datadir=usr/local/mysql/data/mysql
Generating a
2048
bit RSA
private
key
......................+++
...+++
writing
new
private
key to
'ca-key.pem'
-----
Generating a
2048
bit RSA
private
key
.........................+++
...............................................................................+++
writing
new
private
key to
'server-key.pem'
-----
Generating a
2048
bit RSA
private
key
....................+++
.......................+++
writing
new
private
key to
'client-key.pem'
4. 拷贝配置文件和启动脚本
先检查是否有 /etc/my.cnf, 如果没有
cp support-files/my-
default
.cnf /etc/my.cnf
编辑 /etc/my.cnf, 重点修改下面几个,其他的尽量注释掉:
basedir = /usr/local/mysql
datadir =
//usr/local/mysql/data/mysql
socket = /tmp/mysql.sock
2. 启动脚本
cp support-files/mysql.server /etc/init.d/mysqld
编辑 /etc/init.d/mysqld,只修改下面几个:
basedir=/usr/local/mysql
datadir=/data/mysql
将 /etc/init.d/mysqld 加入启动项:
[root@beta mysql]# chkconfig --add mysqld
[root@beta mysql]# chkconfig --list
注意:该输出结果只显示 SysV 服务,并不包含原生 systemd 服务。SysV 配置数据可能被原生 systemd 配置覆盖。
如果您想列出 systemd 服务, 请执行
'systemctl list-unit-files'
。
欲查看对特定 target 启用的服务请执行
'systemctl list-dependencies [target]'
。
mysqld
0
: 关
1
: 关
2
: 开
3
: 开
4
: 开
5
: 开
6
: 关
netconsole
0
: 关
1
: 关
2
: 关
3
: 关
4
: 关
5
: 关
6
: 关
network
0
: 关
1
: 关
2
: 开
3
: 开
4
: 开
5
: 开
6
: 关
5. 启动服务
/etc/init.d/mysqld start
6. 设置 root 密码
用初始密码登陆(见上面第 3 步)
/usr/local/mysql/bin/mysql -uroot -p‘初始密码’#- p 和’’不能隔开
出现 mysql> 的时候,输入 set password = password(‘ 新密码 ’);
退出,用新密码登陆
2. 忘记初始密码
给 /etc/my.cnf/[mysqld] 下面增加一行 skip-grant-tables, 重启 mysqld:/etc/init.d/mysqld restart
[mysqld]
skip-grant-tables
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data/mysql
socket=/tmp/mysql.sock
[root@beta ~]# /etc/init.d/mysqld restart
Shutting down MySQL.. SUCCESS!
Starting MySQL.. SUCCESS!
重新登录 mysql:
[root@beta ~]# /usr/local/mysql/bin/mysql -uroot
mysql> 后输入:update mysql.user set authentication_string=password(‘123333′) where user=’root’;
mysql> update mysql.user
set
authentication_string=password(
'123333'
) where user=
'root'
;
Query OK,
1
row affected,
1
warning (
0.00
sec)
Rows matched:
1
Changed:
1
Warnings:
1
退出,删除 my.cnf 加入的 skip-grant-tables,重启 mysqld
新密码重新登录 mysql:
[root@beta ~]# /usr/local/mysql/bin/mysql -uroot -p
'123333'
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
13
Server version:
5.7
.
19
MySQL Community Server (GPL)
Copyright (c)
2000
,
2017
, 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>
正文完
星哥玩云-微信公众号