简单几步在Linux环境下安装MySQL5.7(附踩坑记录)

   日期:2020-04-30     浏览:111    评论:0    
核心提示:在Linux的环境下安装MySQL可以说是每个开发者必备的知识刚好我的服务器重装了一下 因此重新安装运维

在Linux下安装MySQL可以说是每个开发者必备的知识
刚好我的服务器重装了一下 因此重新安装了MySQL 写下本文特此记录

下载MySQL的压缩包:

官网:https://dev.mysql.com/downloads/mysql/5.6.html#downloads

根据自己的情况选择一个版本的MySQL下载即可(下载速度会比较慢)
下载完之后 传到服务器上(传的也会比较慢)

:32位还是64位一定要选对 否则后面会出错

解压和移动

输入:

tar -xvf mysql-5.7.30-linux-glibc2.12-i686.tar.gz(实际下载的压缩文件名称)

移动到/usr/local/下并改名:

mv mysql-5.7.26-linux-glibc2.12-x86_64 /usr/local/mysql

权限配置

创建名为mysql的权限组和用户
输入:

groupadd mysql
useradd -r -g mysql mysql

参数:
-d:指定用户登入时的起始目录
-r:建立系统账号

然后在根目录下创建数据目录:

cd /
mkdir -p /data/mysql

授权:

chown mysql:mysql -R /data/mysql

(将/data下的mysql的用户组改成mysql用户组下面的mysql用户)

MySQL初始化

输入:

vi /etc/my.cnf

输入i 进入编辑模式 然后写入以下内容:

[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true

按下Esc键 按下Shift+: 输入wq 保存并退出

接着 移动到mysql的bin目录下:

cd /usr/local/mysql/bin/

对mysql进行初始化

./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize

注1:若提示:-bash: ./mysqld: No such file or directory…这是因为你的机器是64位的 而你的mysql压缩包下成32位了
(我憨憨了 这个问题研究了半天 后来又重新下了64位的 完美解决)

注2:若提示:[ERROR] Found option without preceding group in config file /etc/my.cnf at line 1!
表示/etc/my.cnf文件写错了(在第一行粘贴文本进去的时候很容易莫名其妙少一些字符)

初始化之后 输入:

cat /data/mysql/mysql.err

查看生成的随机的初始密码 然后复制:
此密码很重要 后面会用到 可复制到记事本上暂存

启动MySQL

将mysql.server放置到/etc/init.d/mysql中:

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

输入以下命令以启动MySQL:

service mysql start

查看是否启动:ps -ef|grep mysql

修改密码

进入bin目录 登录:

cd /usr/local/mysql/bin
./mysql -u root -p

将刚才复制的初始随机密码输进去
登录成功:

修改密码:

SET PASSWORD = PASSWORd('123456');
alter user 'root'@'localhost' identified by '123456';
flush privileges;

开启远程连接

此时 还不能远程连接
继续在mysql中输入:

use mysql
update user set host = '%' where user = 'root';
FLUSH PRIVILEGES; 

使root能在任何host上访问数据库

设置软链接

这样 就不需要每次都到bin目录下使用mysql命令了

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

结语:

装MySQL真的是一部血泪史 踩了无数的坑 报了无数的错 其中有装成了MariaDB的 后来又卸了 反反复复的装了一整天才好不容易装成功
不过 相信有了这次的踩坑经验之后 要是再装MySQL的话 速度应该会快很多吧

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服