CentOS 7 安装MySql 5.5.60

Posted VicLiu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CentOS 7 安装MySql 5.5.60相关的知识,希望对你有一定的参考价值。

一、方法一

tar.gz安装

1.安装之前的准备

  • 卸载centos7自带的mariadb

rpm -qa|grep mariadb     #查看一下是否有mariadb相关的包
rpm -e --nodeps mariadb-libs-5.5.52-1.el7.x86_64      #把查询到的包卸载
wget https://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.60.tar.gz
  • 下载cmake安装包
wget https://cmake.org/files/v3.10/cmake-3.10.2.tar.gz
  • 添加mysql用户和组
    groupadd mysql
    useradd mysql -s /sbin/nologin -M -g mysql   # -s /sbin/nologin 表示禁止该用户登录,加强安全; -g mysql 指定属于mysql组; -M 表示不创建用户家目录
  • 安装ncurses-devel
    yum install ncurses-devel -y
  • 安装cmake
    tar zxvf cmake-3.10.2.tar.gz -C /usr/local
    cd /usr/local/cmake-3.10.2
    ./configure
    gmake && gmake install 此处如果失败请检查configure配置时的错误文件,根据文件提示操作,然后再进行配置。也可以安装 gcc再试

     

2.安装myqsl

tar zxvf mysql-5.5.60.tar.gz
cd mysql-5.5.60
cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.5.60 -DMYSQL_DATADIR=/application/mysql-5.5.60/data -DMYSQL_UNIX_ADDR=/application/mysql-5.5.60/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DENABLED_LOCAL_INFILE=ON -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 -DWITH_FAST_MUTEXES=1 -DWITH_ZLIB=bundled -DENABLED_LOCAL_INFILE=1 -DWITH_READLINE=1 -DWITH_EMBEDDED_SERVER=1 -DWITH_DEBUG=0
make && make install
  • 做软连接

    ln -s /application/mysql-5.5.60/ /application/mysql
  • mysql目录授权

    chown -R mysql:mysql /application/mysql-5.5.60/
  • 复制相关文件

    cd /application/mysql/support-files
    cp my-small.cnf /etc/my.cnf
    cp mysql.server /etc/init.d/mysqld
    chmod +x /etc/init.d/mysqld
  • mysql初始化
    cd /application/mysql/scripts/
    ./mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data/ --user=mysql

     
  • 启动mysql
    /etc/init.d/mysqld start
  • 配置环境变量
    echo \'export PATH=/application/mysql/bin:$PATH\'>>/etc/profile
    source /etc/profile
  • 配置登陆密码
    /application/mysql//bin/mysqladmin -u root password \'bai123456\'
  • 设置mysql开机启动

    chkconfig mysqld on
    chkconfig --list mysqld        #查看一下
  • 登录mysql

正常的情况是可以正常登陆进去的,但是我在登录的时候报了以下错误信息:

ERROR 1045 (28000): Access denied for user \'root\'@\'localhost\' (using password: NO)

解决方法:

  • 1.停止mysql数据库
    /etc/init.d/mysqld stop
  • 2.执行如下命令
    mysqld_safe --user=mysql --skip-grant-tables --skip-networking &   
  • 3.使用root登录mysql数据库
    mysql -u root mysql
  • 4.更新root密码
    UPDATE user SET Password=PASSWORD(\'ZACS164.COM\') where USER=\'root\';
  • 5.刷新权限
    FLUSH PRIVILEGES;
  • 6.退出mysql
  • 7.重启mysql

    /etc/init.d/mysqld restart
  • 8.使用root用户重新登录mysql

 

二、方法二

tar.gz安装

准备安装

由于CentOS7自带的是 Mariadb, 所以先来删除他吧...

1. 查找版本

# rpm -qa|grep mariadb

执行命令后会出现类似 MariaDB-server-5.5.49-1.el7.centos.x86_64 之类的鬼..记住名字就行了..

2. 删除

# rpm -e --nodeps 上面查出来的文件名

3. 删除配置文件

# rm /etc/my.cnf

到这里就OK了...现在我们开始安装mysql

 

开始安装

 1. 首先官方下载MySQL Community Server 5.5.60

这里要选Linux - Generic哟.

 

2. ftp上传到CentOS中

 

3. 解压

# tar -xvf mysql-5.5.60-linux-glibc2.12-x86_64.tar.gz

4. 复制到local文件夹, 注意,这里前面mysql的文件夹最好使用 ls 命令查看一下.

# mv mysql-5.5.60-linux-glibc2.12-x86_64 /usr/local

 5. 修改文件夹名称, 注意文件夹名称哟..

# cd /usr/local
# mv mysql-5.5.60-linux-glibc2.12-x86_64 mysql-5.5.60

 

6. 修改my.cnf配置文件

# vi /etc/my.cnf

 

将以下内容添加到my.cnf

 

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8 
socket=/var/lib/mysql/mysql.sock

[mysqld]
skip-name-resolve
#设置3306端口
port = 3306 
socket=/var/lib/mysql/mysql.sock
# 设置mysql的安装目录, 这里的目录一定要是你解压后并且改了名的目录哟..
basedir=/usr/local/mysql-5.5.60
# 设置mysql数据库的数据的存放目录, 这里的目录一定要是你解压后并且改了名的目录哟..
datadir=/usr/local/mysql-5.5.60/data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
lower_case_table_name=1
max_allowed_packet=16M

 

7. 切换目录到mysql中

# cd /usr/local/mysql-5.5.60

 

 8. 添加用户组与用户, 这里需要将目录切换到mysql目录下哟..

# groupadd mysql
# useradd -g mysql mysql
# chown -R mysql:mysql ./

 

9. 安装mysql

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

接上图

 

10. 配置Mysql

# chown -R mysql:mysql data
# chown 777 /etc.my.cnf
# cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
# chmod +x /etc/rc.d/init.d/mysqld
# chkconfig --add mysqld
# chkconfig --list mysqld

 

11. 开启服务

# service mysqld start

 

12. 配置PATH

# vi ~/.bash_profile

在文件最后面加入以下内容,并使用:wq保存

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

13. 刷新PATH

# source ~/.bash_profile

 

14. 登录mysql, 这时mysql没有密码, 当出现Enter password:时直接回车

# mysql -uroot -p

 

 15. 修改root密码

mysql> use mysql
mysql> update user set password=password(\'需要设置的密码\') where user=\'root\' and host=\'localhost\';
mysql> flush privileges;

 

16. 设置远程登录

mysql>GRANT ALL PRIVILEGES ON *.* TO \'root\'@\'%\' IDENTIFIED BY \'刚才设置的root密码\' WITH GRANT OPTION;

到此所有配置全部完毕. 你可以使用sqlyog或者其他方式登录mysql了...

 

以上是关于CentOS 7 安装MySql 5.5.60的主要内容,如果未能解决你的问题,请参考以下文章

centos7安装mysql-5.5.60

centos7安装mysql5.7

linux环境下的安装

CentOS 7.4 如何安装 MariaDB 10.3.9 Stable 数据库

centos7安装mysql5.6

Linux安装mysql