1、首先你需要下载一个自己需要的mysql版本
地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads
我这里下载的是: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
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
mkdir data
将/usr/local/mysql-5.7.25的所有者及所属组改为mysql
chown mysql:mysql /usr/local/mysq-5.7/
chmod 750 /usr/local/mysq-5.7/data
在/usr/local/mysql-5.7/support-files目录下创建my.cnf,内容如下:
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html
# *** 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
datadir = /usr/local/mysql-5.7/data
port = 3306
socket = /tmp/mysql.sock
character-set-server=utf8
log-error = /usr/local/mysql-5.7/data/mysqld.log
pid-file = /usr/local/mysql-5.7/data/mysqld.pid
将my.cnf文件复制到/etc下,如果已经存在了则y覆盖
命令:cp support-files/my.cnf /etc/my.cnf
初始化mysqld
cd /usr/local/mysql-5.7
./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql-5.7 --datadir=/usr/local/mysql-5.7/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练习生)