环境
服务器:Linux
客户端:Xshell
系统:CentOS 7
Mysql:mysql-5.7
安装Mysql过程
一:系统约定
Mysql 下载存放目录:/soft
Mysql 目录安装位置:/usr/local/mysql
Mysql 数据库存放位置:/usr/local/mysql/data
Mysql 日志存放位置:/usr/local/mysql/log
二:用户组 用户 权限等约定
检查mysql组和用户是否存在,如无创建
[root@localhost local]# cat /etc/group | grep mysql
[root@localhost local]# cat /etc/passwd | grep mysql
创建mysql用户组
[root@localhost local]# groupadd mysql
创建一个用户名为mysql的用户并加入mysql用户组
[root@localhost local]# useradd -g mysql mysql
设置password 为例如:mysqlpwd
[root@localhost local]# passwd mysql
更改用户 mysql 的密码 。
新的 密码:***
重新输入新的 密码:***
passwd:所有的身份验证令牌已经成功更新。
成功结果
三:安装开始
检查mysql是否存在
[root@localhost local]# rpm -qa | grep mysql
1、下载tar包到 soft/目录中,这里使用wget从官网下载
[root@localhost /]# cd soft/
[root@localhost /]# wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz
2.解压
[root@localhost /]# cd soft/
[root@localhost soft]# tar -vxzf mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz
3.重命名
[root@localhost /]# mv /soft/mysql-5.7.21-linux-glibc2.12-x86_64 /soft/mysql
4.移动(/soft/mysql 移动到/usr/local/)
[root@localhost soft]# mv mysql /usr/local/
5.更改所属的组和用户
[root@localhost local]# chown -R mysql mysql/
[root@localhost local]# chgrp -R mysql mysql/
6.在 /usr/local/mysql文件夹下创建 数据库数据存储目录 data
[root@localhost local]# cd mysql/
[root@localhost mysql]# mkdir data
#修改当前data目录拥有者为mysql用户
[root@localhost mysql]# chown -R mysql:mysql data
7.在 /usr/local/mysql文件夹下创建 日志存储目录 log
[root@localhost local]# cd mysql/
[root@localhost mysql]# mkdir log
[root@localhost mysql]# chown -R mysql:mysql log
8.在etc下新建配置文件my.cnf,并在该文件内添加以下配置
[root@localhost mysql]# vi /etc/my.cnf
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
skip-name-resolve
#设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=/usr/local/mysql
# 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql/data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
#default-storage-engine=INNODB
#lower_case_table_names=1
#max_allowed_packet=16M
# 取消密码验证
#skip-grant-tables #设置密码后,注释掉
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
explicit_defaults_for_timestamp=true
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
9.始化数据库
[root@localhost bin]# cd /usr/local/mysql/
[root@localhost mysql]# ./bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/
2019-12-24 19:14:49 [WARNING] mysql_install_db is deprecated. Please consider switching to mysqld --initialize
2019-12-24 19:14:56 [WARNING] The bootstrap log isn't empty:
2019-12-24 19:14:56 [WARNING] 2019-12-25T03:14:49.623125Z 0 [Warning] --bootstrap is deprecated. Please consider using --initialize instead
2019-12-25T03:14:49.624103Z 0 [Warning] Changed limits: max_open_files: 1024 (requested 5000)
2019-12-25T03:14:49.624115Z 0 [Warning] Changed limits: table_open_cache: 407 (requested 2000)
10.
[root@localhost mysql]# cp ./support-files/mysql.server /etc/init.d/mysqld
#将脚本文件设置成可执行文件
[root@localhost mysql]# chown 777 /etc/my.cnf
[root@localhost mysql]# chmod a+x /etc/init.d/mysqld
11.启动
[root@localhost mysql]# /etc/init.d/mysqld start #启动
ERROR! MySQL server PID file could not be found!
Starting MySQL. SUCCESS!
[root@localhost mysql]# /etc/init.d/mysqld stop #停止
[root@localhost mysql]# /etc/init.d/mysqld restart #重启
12.获得初始密码
[root@localhost mysql]# cat /root/.mysql_secret
# Password set for user 'root@localhost' at 2019-12-24 19:14:49
oedf?:g<#T_l
13.使用安全模式登陆,跳过密码验证,设置密码 用户xiaolan 密码 123456
[root@localhost mysql]# cd /usr/local/mysql/bin
[root@localhost bin]# ./mysql -u root -p
mysql> use mysql;
//赋予任何主机访问数据的权限 并设置远程访问权限
mysql> GRANT ALL PRIVILEGES ON *.* TO 'xiaolan'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
//修改生效
mysql>flush privileges;
//退出MySQL服务器
mysql>exit;
控制台修改 设置用户和密码 并设置远程访问权限 @‘%’ 表示在任何主机都可以登录
GRANT ALL PRIVILEGES ON *.* TO 'xiaolan'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
14.防火墙设置
添加端口或关闭防火墙
15.设置开机启动
chkconfig --list 列出所有的系统服务
chkconfig --add mysqld增加mysqld 服务
chkconfig --del mysqld 删除mysqld 服务
[root@localhost mysql]# chkconfig --level 35 mysqld on #将httpd加入开机启动
[root@localhost mysql]# chmod +x /etc/rc.d/init.d/mysqld
[root@localhost mysql]# chkconfig --add mysqld #将mysqld加入开机启动
[root@localhost mysql]# chkconfig --list mysqld #查看系统程序列表
[root@localhost mysql]# service mysqld status #启动mysqld服务
16.重启机器验证是否启动
[root@localhost ~]#reboot
[root@localhost ~]# ps -ef | mysql
17.连接数据库