1系统约定
安装文件下载目录:/data/software
Mysql目录安装位置:/usr/local/mysql
数据库保存位置:/data/mysql
日志保存位置:/data/log/mysql
2下载mysql
在官网:http://dev.mysql.com/downloads/mysql/ 中,选择以下版本的mysql下载:
执行如下命名:
#mkdir /data/software
#cd /data/software
#wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.13-linux-glibc2.5-x86_64.tar.gz
3解压压缩包到目标位置
#mkdir /usr/local/mysql
#cd /data/software
#pwd
执行后如下:
#ls
#cd /usr/local
#pwd
#tar -xzvf /data/software/mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz
#ls
–修改文件名
#mv mysql-5.7.19-linux-glibc2.12-x86_64 mysql
#ls
4创建数据仓库目录
–/data/mysql 数据仓库目录
#mkdir /data/mysql
#ls /data/
5新建mysql用户、组及目录
#—新建一个msyql组
#useradd -r -s /sbin/nologin -g mysql mysql -d /usr/local/mysql —新建msyql用户禁止登录shell
5.1.如果上面命令执行错误,则按下面命令继续执行。
检查mysql组和用户是否存在,如无创建。
[root@localhost ~]# cat /etc/group | grep mysql
mysql❌490:
[root@localhost ~]# cat /etc/passwd | grep mysql
mysql❌496:490::/home/mysql:/bin/bash
以上为默认存在的情况,如无,执行添加命令:
[root@localhost ~]#groupadd mysql
[root@localhost ~]#useradd -r -g mysql mysql
//useradd -r参数表示mysql用户是系统用户,不可用于登录系统。
6改变目录属有者
#cd /usr/local/mysql
#pwd
#chown -R mysql .
#chgrp -R mysql .
#chown -R mysql /data/mysql
7配置参数
#bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql
此处需要注意记录生成的临时密码,如上文:YLi>7ecpe;YP
root@localhost: JID&VU/r72JT
#bin/mysql_ssl_rsa_setup --datadir=/data/mysql
8修改系统配置文件
#cp my-default.cnf /etc/my.cnf
注:5.7版本后没有my-default.cnf文件,可在/etc/下创建my.cnf文件,内容如下:
[mysqld]
datadir=/usr/local/data/mysql
socket=/var/lib/mysql/mysql.sock
[mysql.server]
user=mysql
basedir=/usr/local/mysql
[client]
socket=/var/lib/mysql/mysql.sock
#cp mysql.server /etc/init.d/mysql
#vim /etc/init.d/mysql
修改以下内容:
9启动mysql
#bin/mysqld_safe --user=mysql &
此处可能会报错
- 错误日志 显示 Could not create unix socket lock file /var/lib/mysql/mysql .sock.lock.(ll /usr/XXX/log)
错误原因 该文件目录的所有者 所属组并非我们之前创建的mysql用户
mkdir /var/lib/mysql
chown -R mysql /var/lib/mysql
bin/mysql --user=root –p
–输入第6步生成的临时密码
mysql> set password=password(‘Aa123456’);
mysql>grant all privileges on . to root@’%’ identified by ‘Aa123456’;
mysql> flush privileges;
mysql> use mysql;
mysql> select host,user from user;
10添加系统路径
#vim /etc/profile
添加:
export PATH=/usr/local/mysql/bin:$PATH
如下:
#source /etc/profile
11配置mysql自动启动
#chmod 755 /etc/init.d/mysql
#chkconfig --add mysql
#chkconfig --level 345 mysql on
12、删除开机启动(根据自己需要执行)
#chkconfig --del mysqld
13.添加远程访问权限
mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> update user set host = ‘%’ where user = ‘root’;
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0
mysql> select host, user from user;
±----------±----------+
| host | user |
±----------±----------+
| % | root |
| localhost | mysql.sys |
±----------±----------+
重启生效
/etc/init.d/mysql restart
参考文件:
1.http://www.jb51.net/article/90317.htm
2.http://www.linuxidc.com/Linux/2016-06/132676.htm
3.http://blog.csdn.net/wb96a1007/article/details/51559741
- 错误日志 显示 Could not create unix socket lock file /var/lib/mysql/mysql .sock.lock.(ll /usr/XXX/log)
错误原因 该文件目录的所有者 所属组并非我们之前创建的mysql用户
mkdir /var/lib/mysql
chown -R mysql /var/lib/mysql - 安装成功 外网不能成功访问的原因 检验 root用户相关的Host字段值 应置为 %
update user set Host=’%’ where user=‘root’;
flush privileges;
另需检查防火墙因素