一、方法一
tar.gz安装
1.安装之前的准备
卸载centos7自带的mariadb
rpm -qa|grepmariadb #查看一下是否有mariadb相关的包
rpm-e --nodeps mariadb-libs-5.5.52-1.el7.x86_64 #把查询到的包卸载
下载mysql安装包
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.60cmake .-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-filescp my-small.cnf /etc/my.cnfcp mysql.server /etc/init.d/mysqldchmod +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
开始安装
这里要选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= 3306socket=/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=1max_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> usemysql
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了...