linux系统离线安装mysql

本文主要介绍linux使用官方编译好的二进制包安装mysql。

首先下载:mysql-5.6.37-linux-glibc2.12-x86_64.tar.gz

网址:https://dev.mysql.com/downloads/mysql/

注意选择:

Linux - Generic  表示Linux通用版本的mysql

解压安装文件:

[java]  view plain  copy
  1. tar -zxvf mysql-5.6.37-linux-glibc2.12-x86_64.tar.gz  

复制解压后的mysql目录到系统的本地软件目录:

[java]  view plain  copy
  1. cp mysql-5.6.37-linux-glibc2.12-x86_64 /usr/local/mysql -r  
添加系统mysql组和mysql用户:

[java]  view plain  copy
  1. groupadd mysql和useradd -r -g mysql mysql  
安装数据库:

[java]  view plain  copy
  1. 进入安装mysql软件目录:执行命令 cd /usr/local/mysql  
  2. 修改当前目录拥有者为mysql用户:执行命令 chown -R mysql:mysql ./  
  3. 安装数据库:执行命令 ./scripts/mysql_install_db --user=mysql  
  4. 修改当前目录拥有者为root用户:执行命令 chown -R root:root ./  
  5. 修改当前data目录拥有者为mysql用户:执行命令 chown -R mysql:mysql data  
  6. 到此数据库安装完毕  
启动mysql服务和添加开机启动mysql服务:

[java]  view plain  copy
  1. 添加开机启动:执行命令cp support-files/mysql.server /etc/init.d/mysql,把启动脚本放到开机初始化目录  
  2. 启动mysql服务:执行命令service mysql start  
  3. 执行命令:ps -ef|grep mysql 看到mysql服务说明启动成功  
修改mysql的root用户密码,root初始密码为空的:

[java]  view plain  copy
  1. ./bin/mysqladmin -u root password '密码'  
把mysql客户端放到默认路径:

[java]  view plain  copy
  1. ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql  


安装过程问题解决办法:
1.在启动时报错 ERROR!The server quit without updating PID file

解决办法:网上找个很多这个问题的解决方式,如果你都试了没用就用如下方法。使用vi /etc/my.conf命令进入配置文件(如果没有这个文件,那就从/usr/local/mysql里边拷贝一份到/etc目录下)。在[mysqld]下边添加几个配置项:

port=3306

datadir=/usr/local/mysql/data

pid-file=/usr/local/mysql/data/mysql.pid(重点是这项,配置后还需在这个配置路径下创建一个mysql.pid的文件)

保存并重启mysql即OK

2.centos安装mysql时,可能已经安装mariadb。它会与最后安装的mysql有版本匹配问题,具体原因问度娘就知道了。

解决办法就是卸载mariadb:

 rpm -qa | grep mariadb查看系统已安装的mariadb所有文件,根据返回的列表文件名,使用下边的命令删除,如果没有返回就表示未安装。

 rpm -e --nodeps 你看见的返回结果名字,比如 mariadb-libs-5.5.35-3.el7.x86_64

3.开启远程访问限制

use mysql
update user set host='%' where user='root';
ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY'  不予理会
flush privileges;
重新远程连接OK
CentOS环境开放3306端口

[java]  view plain  copy
  1. <span style="font-size:18px;">iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT</span>  
查看规则是否生效:iptables -L -n  //或者 service iptables status 

4.解决ln -s 软链接产生Too many levels of symbolic links错误

[java]  view plain  copy
  1. <span style="font-size:18px;">ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql</span>  
[java]  view plain  copy
  1. <span style="font-size:18px;">如在进行上边的软链接时,如果出现报错,直接去/usr/local/bin/下边删除mysql,再试一次即可。</span>  
3.mysql无法启动

去/tmp目录下查看是否已经存在mysql.sock,如果已经存在表示你之前已经启动过,删除mysql.sock重启即可。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值