作为一个长期混迹在windows圈的小白,当拿到一个新的linux服务器时,有点手足无措的赶脚。但是万事开头难嘛,Just Do It!

下面记录一下自己安装各种软件时遇到的坑。这一篇先讲mysql

安装环境:系统是 centos7.3 64位

1:mysql

通常软件都安装在 /usr/local下面

#下载

wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz

否则只能先通过windows下载,再用winscp传到linux系统了。

#解压

tar -zxvf mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz

#复制解压后的mysql目录

cp -r mysql-5.6.33-linux-glibc2.5-x86_64 /usr/local/mysql

#添加用户组

groupadd mysql

#添加用户mysql 到用户组mysql

useradd -g mysql mysql

#在mysql目录下创建data目录

mkdir ./data   (不要忘记了有个点)

#把mysql目录赋给mysql用户

chown -R mysql:mysql ./

#安装

./scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data

cp support-files/mysql.server /etc/init.d/mysqld

chmod 755 /etc/init.d/mysqld

cp support-files/my-default.cnf /etc/my.cnf

#修改启动脚本

vi /etc/init.d/mysqld

下面这几行好像也要在etc/my.cnf里面改?vi /etc/my.cnf     ---20181227留

#修改项:

basedir=/usr/local/mysql/

datadir=/usr/local/mysql/data/

log-error = /usr/local/mysql/data/error.log

pid-file = /usr/local/mysql/data/mysql.pid

user = mysql
tmpdir = /tmp

#启动服务

service mysqld start

#加入环境变量,编辑 /etc/profile,这样可以在任何地方用mysql命令了

export PATH=$PATH:/usr/local/mysql/bin

source /etc/profile

#测试连接

./mysql/bin/mysql -uroot

#关闭mysql

service mysqld stop

#查看运行状态

service mysqld status

------------------------------分割线

遇到的问题:

1:MySQL提示:The server quit without updating PID file

先查看下错误日志,通常是权限问题,或者是已经存在mysqld进程,或者是/etc/my.cnf的data配置节没弄对,或者是打开了selinux,centos系统,默认会开启selinux

打开/etc/selinux/config,把SELINUX=enforcing改为SELINUX=disabled

但是我遇到了这个问题上面的方法都没解决,后来发现是内存不足导致的。。穷人啊,没招,只好加内存,再重启,问题解决。。

2:sqlyog连接时,报1130错误,是由于没有给远程连接的用户权限问题

解决办法:更改 ‘mysql’数据库‘user’表‘host’项,从‘localhost’改成‘%’

use mysql;
select 'host' from user where user='root';
update user set host = '%' where user ='root';
flush privileges;
\q 其实这一句可以修改成这样,
update user set host = '%' where host ='localhost';

3:sqlyog连接时,修改root密码

mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root';
mysql> FLUSH PRIVILEGES;//记得要这句话,否则如果关闭先前的终端,又会出现原来的错误
mysql> \q

4:始化mysql数据库提示缺少Data:dumper模块

FATAL ERROR: please install the following Perl modules before executing /usr/local/mysql/scripts/mysql_install_db:

解决方法 :安装autoconf库
  命令:yum-y install autoconf   //此包安装时会安装Data:Dumper模块
 

这篇博文参考了以下link。https://www.cnblogs.com/bookwed/p/5896619.html

5:com.mysql.jdbc.PacketTooBigException: Packet for query is too large

原因是mysql的max_allowed_packet设置过小引起的,我一开始设置的是1M,后来改为了20M

查看目前配置
show VARIABLES like '%max_allowed_packet%';

可以编辑my.cnf来修改(windows下my.ini), vi /etc/my.cnf

在[mysqld]段或者mysql的server配置段进行修改。
max_allowed_packet = 20M
如果找不到my.cnf可以通过

mysql --help | grep my.cnf

去寻找my.cnf文件.

6. Can't connect to local MySQL server through socket '***'

参考 http://aiezu.com/article/mysql_cant_connect_through_socket.html

解决方案:

  修改“/etc/my.cnf”配置文件,在配置文件中添加“[client]”选项和“[mysql]”选项,并使用这两个选项下的“socket”参数值,与“[mysqld]”选项下的“socket”参数值,指向的socket文件路径完全一致。如下:

[mysqld]

datadir=/usr/local/mysql/data

socket=/usr/local/mysql/data/mysql.sock

[client]

default-character-set=utf8

socket=/usr/local/mysql/data/mysql.sock

[mysql]

default-character-set=utf8

socket=/usr/local/mysql/data/mysql.sock

修改完后,重启mysqld服务,即可解决

7. Installing MySQL system tables..../bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

yum install -y libaio

搞定

8:执行./scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data

报错-bash: ./mysql_install_db: /usr/bin/perl: bad interpreter: No such file or directory

解决办法:yum -y install perl perl-devel

Linux 各种软件的安装-mysql篇的更多相关文章

  1. CentOS6安装各种大数据软件 第三章:Linux基础软件的安装

    相关文章链接 CentOS6安装各种大数据软件 第一章:各个软件版本介绍 CentOS6安装各种大数据软件 第二章:Linux各个软件启动命令 CentOS6安装各种大数据软件 第三章:Linux基础 ...

  2. centOS Linux下用yum安装mysql

    centOS Linux下用yum安装mysql      第一篇:安装和配置MySQL   第一步:安装MySQL   [root@192 local]# yum -y install mysql- ...

  3. 笔记:Linux下软件的安装、CentOS更新yum源、LAMP环境搭建、kali软件管理

    一.Linux下软件的安装 方式:yum源 / rpm /源码安装 1.yum:(帮助管理员解决依赖关系) yum是通过分析rpm的包头数据后,根据各种软件的相关性质做出属性相对应的解决方案,然后可以 ...

  4. linux下使用yum安装mysql、tomcat、httpd

    一.linux下使用yum安装mysql   1.安装 查看有没有安装过:           yum list installed mysql*           rpm -qa | grep m ...

  5. Linux centos7环境下安装MySQL的步骤详解

    Linux centos7环境下安装MySQL的步骤详解 安装MySQL mysql 有两个跟windows不同的地方 1).my.ini 保存到/etc/my.ini 2).用户权限,单独用户执行 ...

  6. [mysql] linux下使用yum安装mysql

    From: http://www.2cto.com/database/201207/141878.html linux下使用yum安装mysql   1.安装 查看有没有安装过:           ...

  7. Linux下软件常见安装方式

    pasting  分类: Linux2007-12-08 16:31 1909人阅读 评论(0) 收藏 举报 linuxredhat脚本文档managerfile        Linux下软件安装主 ...

  8. LINUX:Contos7.0 / 7.2 LAMP+R 下载安装Mysql篇

    文章来源:http://www.cnblogs.com/hello-tl/p/7569097.html 更新时间:2017-09-21 16:06 简介 LAMP+R指Linux+Apache+Mys ...

  9. linux系统ubuntu18.04安装mysql(5.7)

    本文是参考mysql官网整理而成,顺便把一些遇到的问题记载下来. ①将MySQLAPT存储库添加到系统的软件存储库列表中  ---->下载APT存储库(下载链接)  ---->安装APT存 ...

随机推荐

  1. android uboot中的mmc命令

    一:mmc的命令如下: 1:对mmc读操作 mmc read addr blk# cnt 2:对mmc写操作 mmc write addr blk# cnt 3:对mmc擦除操作 mmc erase ...

  2. Git 安装和使用教程(转载)

    转载:https://www.cnblogs.com/smuxiaolei/p/7484678.html 转载:https://blog.csdn.net/wk_1214BoKe/article/de ...

  3. vsCode设置中文

    1.安装软件之后,关闭欢迎界面,Ctrl+shift+p打开命令窗口,输入lang,选择configuration display language,改为 "locale":&qu ...

  4. weblogic10以下,许可证过期解决办法

    weblogic10以后的版本已经不再使用license.bea的方式来进行软件授权,之前的历史版本oracle提供了一个免费的许可证更新. 1.首先进入oracle的官网下载地址http://www ...

  5. linux内核中的cfq输入输出调度算法

    1. 全称是什么? 完全公平调度算法(completely fair queuing) 2. 原理是怎样的? 先按照输入输出请求的地址进行排序,然后按排好的次序执行请求 3. 适用场景 适用于旋转式磁 ...

  6. 再次安装fedora23的一些遗留问题的解决

    当你习惯了某个版本后, 就不想再更换了. 安装fedora23的磁盘空间 获得? 在安装新的fedora23 的时候, 原来的磁盘没有清空, 于是 就 have not enough free apa ...

  7. Hyper

    https://github.com/zeit/hyper https://gist.github.com/coco-napky/404220405435b3d0373e37ec43e54a23 Ho ...

  8. C# 禁止任务管理器关闭

    http://www.cnblogs.com/luomingui/archive/2011/06/25/2090130.html 测试了好像没用的.不知道什么原因

  9. 【BZOJ 5125】小Q的书架

    Problem Description 小 \(Q\) 有 \(n\) 本书,每本书有一个独一无二的编号,现在它们正零乱地在地上排成了一排. 小 \(Q\) 希望把这一排书分成恰好 \(k\) 段,使 ...

  10. BZOJ 4591 【SHOI2015】 超能粒子炮·改

    题目链接:超能粒子炮·改 这道题的大体思路就是用\(lucas\)定理,然后合并同类项,就可以得到一个可以递归算的式子了. 我们用\(S(n,k)\)表示答案,\(p\)表示模数(\(2333\)是一 ...