1-1, 一个简单的mysql 安装教程,基于mysql 5.7解压版本.

下载mysql. 略,去官网

1. 配置my.cnf. 把mysql提供的配置模板 copy到/etc/my.cnf

(先读取/etc/my.cnf,再去读/etc/mysql/my.cnf,第三个读/$base_dir$/my.cnf)

cp /usr/local/mysql-5.7.14/support-files/my-default.cnf /etc/

2, 配置my.cnf

basedir=/usr/local/mysql
datadir=/data/mysql/data
pid-file=/data/mysql/data/db.pid
port= 3306
server_id=1015127
socket=/tmp/mysql.sock

3, 设置base_dir

短链过去,避免修改:

ln -s /usr/local/mysql-5.7.14 /usr/local/mysql


 

4, 创建好mysql用于存放data的文件夹

如 :

data文件夹 /data/mysql/data

(这一步很重要,先创建好,再分配权限,不如由mysql 初始化自己生成的。不指定用户容易造成权限问题)

5,mysql默认是用mysql用户进行运行的, 故需要创建并授权mysql用户与组(运行用户可以在my.cnf上修改,一般不修改)

groupadd mysql

useradd -r -g mysql mysql

授权相应目录

chown -R mysql:mysql /data/mysql/data

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

6, 初始化

mysqld --initialize --user=mysql

user要带上,不然容易引起后面权限问题

如:

[Note] A temporary password is generated for root@localhost: W*U.%Izer3J8

记录好当前初始化的密码,登录时用到

7,配置service的命令支持,

cp support-files/mysql.server /etc/init.d/mysql

启动:

service mysql start

启动时,出现问题,大概率是文件权限问题, 查看 base的目录与pid目录,还有data目录是否有权限(分给mysql的)。如如果用root去initialize之后自己创建的data是没mysql的权限的,重复执行授权命令

没问题的话,会出现

Starting MySQL. SUCCESS! 

8, 第一次登录需要修改密码

SET PASSWORD = PASSWORD('123456');

9.授权远程管理,一般不会只在本机使用

USE mysql;

CREATE USER 'hejb'@'%' IDENTIFIED BY '123456'; //创建用户hejb ,密码123456的账户

grant ALL on *.* to hejb@'%'; //授权所有

flush privileges;

OK, 可以远程连接成功了,可以尝试用navicat连接试试

原文地址:https://www.cnblogs.com/springsource/p/9983389.html