手把手教你Linux下搭建mysql环境

165 阅读3分钟

​​​​​本文已参与「新人创作礼」活动,一起开启掘金创作之路。​

1、首先你需要下载一个自己需要的mysql版本

地址:MySQL :: Download MySQL Community Server

我这里下载的是:mysql-5.7.27-linux-glibc2.12-x86_64.tar.gz

2、将下载好的安装包放到 /usr/local目录下(目录可以改成你自己的)

进入到目录文件夹 cd /usr/local

解压:tar -zxvf mysql-5.7.27-linux-glibc2.12-x86_64.tar.gz

然后重命名:mv mysql-5.7.27-linux-glibc2.12-x86_64 mysql-5.7.27

3、添加系统mysql组合mysql用户

先检查mysql组合用户是否存在,如果没有则需要创建

cat /etc/group | grep mysql
# 结果:mysql:x:1000:

cat /etc/passwd | grep mysql

# 结果:mysql:x:990:1000::/home/mysql:/bin/false

如果出现上方这样,则是存在了,如果不存在则创建,命令如下:

groupadd mysql

useradd -r -g mysql mysql

#useradd 的命令格式:

useradd [-d home] [-s shell] [-c comment] [-m [-k template]] [-f inactive] [-e expire ] [-p passwd] [-r] name

各个参数详解:

-c:加上备注文字,备注文字保存在passwd的备注栏中。
-d:指定用户登入时的起始目录。
-D:变更预设值。
-e:指定账号的有效期限,缺省表示永久有效。
-f:指定在密码过期后多少天即关闭该账号。
-g:指定用户所属的起始群组。
-G:指定用户所属的附加群组。
-m:自动建立用户的登入目录。
-M:不要自动建立用户的登入目录。
-n:取消建立以用户名称为名的群组。
-r:建立系统账号。
-s:指定用户登入后所使用的shell。
-u:指定用户ID号。

4、安装数据库

创建data数据目录

cd /usr/local/mysql-5.7.27

mkdir data

将/usr/local/mysql-5.7.27的所有者及所属组改为mysql

chown mysql:mysql /usr/local/mysql-5.7.27/
chmod 750 /usr/local/mysql-5.7.27/data

在/usr/local/mysql-5.7/support-files目录下创建my.cnf,内容如下:

# For advice on how to change settings please see
# dev.mysql.com/doc/refman/…
# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL.

[mysqld]
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

basedir = /usr/local/mysql-5.7.27
datadir = /usr/local/mysql-5.7.27/data
port = 3306
socket = /tmp/mysql.sock
character-set-server=utf8

log-error = /usr/local/mysql-5.7.27/data/mysqld.log
pid-file = /usr/local/mysql-5.7.27/data/mysqld.pid

将my.cnf文件复制到/etc下,如果已经存在了则y覆盖

命令:cp support-files/my.cnf /etc/my.cnf

初始化mysqld

cd /usr/local/mysql-5.7.27

./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql-5.7.27 --datadir=/usr/local/mysql-5.7.27/data

把启动脚本放到开机初始化目录里

cd /usr/local/mysql-5.7/support-files/

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

启动mysql

service mysql start

登录mysql,没有得到初始密码的话,只能去改掉密码

5、改密码步骤

首先关闭mysql服务 service mysql stop

修改 mysql的配置文件my.cnf 添加一行 skip-grant-tables 跳过密码

vim /etc/my.cnf

​编辑

保存文件后重启mysql

service mysql start

进入到mysql

mysql -u root

此时出现这个错误信息

​编辑

(这样也可以启动

cd /usr/local/mysql-5.7

./bin/mysql -u root -p

原因:这是由于系统默认会查找/usr/bin下的命令,如果这个命令不在这个目录下,当然会找不到命令,我们需要做的就是映射一个链接到/usr/bin目录下,相当于建立一个链接文件。
首先得知道mysql命令或mysqladmin命令的完整路径,比如mysql的路径是:/usr/local/mysql/bin/mysql,我们则可以这样执行命令:

ln -s /usr/local/mysql-5.7/bin/mysql /usr/bin

下面执行

use mysql;

update mysql.user set authentication_string=password('你要修改该的密码') where user='root';

执行成功后,将 /etc/my.cnf中添加的那行代码去掉,重启mysql服务即可

到这里完成了mysql的安装与应用

常用命令:

重启mysql生效

service mysql stop

service mysql start

或者一条命令 service mysql restart

更多编程内容,请扫码关注《coder练习生》,如果觉得有用,也可赠送作者一杯咖啡