centos6.8离线安装mysql5.6

参考链接:https://blog.csdn.net/YickreeSuen/article/details/80111624
本文在参考链接的基础上补充自己在安装过程中遇到的问题
首先增加mysql需要的依赖,主要包括三大类:gcc编译器(linux默认的c、c++编译器,大部分linux系统默认安装,可通过gcc -v查看是否安装, 如果未安装需要自行安装),glibc资源库(GUN发布的c运行库,一般系统运行必须的运行库),perl语言(一种语言,可以与mysql进行交互)。
————————————————
gcc和glibc的安装所需依赖:
首先到http://vault.centos.org/6.5/os/x86_64/Packages/下载用到的rpm包
rpm -ivh ppl-0.10.2-11.el6.x86_64.rpm
rpm -ivh cloog-ppl-0.15.7-1.2.el6.x86_64.rpm
rpm -ivh mpfr-2.4.1-6.el6.x86_64.rpm
rpm -ivh cpp-4.4.7-4.el6.x86_64.rpm
rpm -ivh kernel-headers-2.6.32-431.el6.x86_64.rpm
rpm -ivh glibc-headers-2.12-1.132.el6.x86_64.rpm
rpm -ivh glibc-devel-2.12-1.132.el6.x86_64.rpm
rpm -ivh gcc-4.4.7-4.el6.x86_64.rpm
rpm -ivh libstdc+±devel-4.4.7-4.el6.x86_64.rpm
rpm -ivh gcc-c+±4.4.7-4.el6.x86_64.rpm
一定要按顺序进行安装
部分安装提示already installed,没关系,
如遇Error 在安装时后面加:加上参数 --nodeps --force
rpm -ivh ppl-0.10.2-11.el6.x86_64.rpm --nodeps --force
rpm -ivh cloog-ppl-0.15.7-1.2.el6.x86_64.rpm --nodeps --force
rpm -ivh mpfr-2.4.1-6.el6.x86_64.rpm --nodeps --force
rpm -ivh cpp-4.4.7-4.el6.x86_64.rpm --nodeps --force
rpm -ivh kernel-headers-2.6.32-431.el6.x86_64.rpm --nodeps --force
rpm -ivh glibc-headers-2.12-1.132.el6.x86_64.rpm --nodeps --force
rpm -ivh glibc-devel-2.12-1.132.el6.x86_64.rpm --nodeps --force
rpm -ivh gcc-4.4.7-4.el6.x86_64.rpm --nodeps --force
rpm -ivh libstdc+±devel-4.4.7-4.el6.x86_64.rpm --nodeps --force
rpm -ivh gcc-c+±4.4.7-4.el6.x86_64.rpm --nodeps --force
执行完,gcc就安装成功了
————————————————
perl安装过程:
到 https://www.cpan.org/src/5.0/perl-5.28.1.tar.gz下载安装包
tar -xzf perl-5.28.1.tar.gz
cd perl-5.28.1
./Configure -des -Dprefix=$HOME/localperl
make
make test
make install
————————————————
下面开始安装mysql:
步骤一:(root操作)
解压mysql5.6-linux-x64.tar.gz文件,并将其解压文件放在/usr/java/mysql/中
命令:tar -zxvf mysql5.6-linux-x64.tar.gz

步骤二:(root操作)
重命名解压文件,将名字改为mysql5.6
命令:mv mysql5.6-linux-x64.tar.gz mysql5.6

步骤三:(root操作)
创建mysql分组和mysql用户,注意这个mysql用户用于管理mysql的操作,root不能直接去管理mysql的相关操作!
命令:
groupadd mysql //创建mysql组
useradd -g mysql mysql //创建mysql用户并置于mysql组中
passwd mysql //设置mysql用户密码
chown -R mysql:mysql /usr/java/mysql/ //给用户组授权

步骤四:(root操作)
进入/usr/java/mysql/mysql5.6/目录,也就是mysql5.6的根目录,然后新建或修改my.cnf配置文件。
命令:vim my.cnf (若文件没有,就自己新建)
在my.cnf中添加以下内容:
[client]
default-character-set=utf8
socket=/usr/java/mysql/mysql5.6/tmp/mysql.sock
[mysql]
default-character-set=utf8
[mysqld]
socket=/usr/java/mysql/mysql5.6/tmp/mysql.sock
tmpdir=/usr/java/mysql/mysql5.6/tmp/
basedir=/usr/java/mysql/mysql5.6
datadir=/usr/java/mysql/mysql5.6/data
symbolic-links=0
character_set_server=utf8
[mysqld_safe]
default-character-set=utf8
log-error=/usr/java/mysql/mysql5.6/logs/mysqld.log
pid-file=/usr/java/mysql/mysql5.6/run/mysqld/mysqld.pid
注意:路径根据自己的位置来配置!
保存退出并授权
保存退出 :wq
授权: chmod 644 my.cnf

步骤五:(root操作)
进入/usr/java/mysql/mysql5.6/目录,若没有tmp、logs、run/mysqld等目录,则自行添加。
命令:
mkdir tmp
mkdir logs
mkdir -p run/mysqld
另外,注意要建立和my.cnf中配置的空文件,即
mysql.sock、mysqld.log、mysqld.pid

步骤六:(root操作)
再次授权,第一个mysql是用户名,第二个mysql组名
chown -R mysql:mysql /usr/java/mysql/ //给用户组授权

步骤七:(root操作)
在/usr/java/mysql/mysql5.6/目录下,初始化配置文件
./scripts/mysql_install_db --user=mysql --defaults-file=/usr/java/mysql/mysql5.6/my.cnf --basedir=/usr/java/mysql/mysql5.6 --datadir=/usr/java/mysql/mysql5.6/data/
注意:–user=mysql中的mysql表示的是用户名
我在执行过程中遇到缺少libaio、libnuma的情况,又去下载了两个依赖包
http://mirror.centos.org/centos/6/os/x86_64/Packages/libaio-0.3.107-10.el6.x86_64.rpm
https://centos.pkgs.org/6/centos-x86_64/numactl-2.0.9-2.el6.x86_64.rpm.html

步骤八:(mysql操作)
切换为mysql用户,再进行操作。
su mysql
输入密码后进入mysql用户身份。

步骤九:(mysql操作)
在/usr/java/mysql/mysql5.6/目录(mysql根目录)下,输入如下命令
bin/mysqld_safe &
若长时间不动卡主,则ctrl+c终止,再
bin/mysqld_safe
若卡住不动,且ctrl+c无法退出,则关闭ssh连接,进行ssh重连。
重连后不需要再次操作以上命令。

步骤十:(mysql操作)
查看是否启动成功,执行:
ps -ef|grep mysql
查看结果如下图显示,则启动成功

步骤十一:(root操作)
切回root用户
su root
在/usr/java/mysql/mysql5.6/目录下,登入mysql数据库的root账户。
bin/mysql -h127.0.0.1 -uroot
注意:若出现
Access denied for user ‘root’@‘localhost’ (using password: NO)
则运行命令:
bin/mysql -h127.0.0.1 -uroot -p
然后输入密码:123456(root用户的初始密码)
就可以进入mysql了。

步骤十二:(root操作)
进入mysql进行mysql指令的相关操作。
show databases; //查询所有库
(建议删除test库,自己建一个test库代替)
use mysql; //使用mysql库
select * from user; //查询user表,此表是管理mysql用户的表
————————————————
在本地使用navicat连接服务器数据库时,遇到问题:
(1)权限不够,mysql默认只有本地可以访问,因此在远程可以连接的话,需要设置他的权限
grant all privileges on . to ‘账号’@’%’ identified by ‘密码’;
all privileges表示数据表操作权限,*.*表示库的名称,点表示全部数据库,%表示授权给任何ip
flush privileges;

你可能感兴趣的:(程序人生)