在安装之前先检查一下之前有没有安装过,如果之前安装过,先卸载完全再重新安装
用#tar -zxvf命令解压文件
#tar -zxvf mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz
将解压出来的mysql-5.7.23-linux-glibc2.12-x86_64文件名改为:mysql
#mv mysql-5.7.23-linux-glibc2.12-x86_64 mysql
#mkdir /usr/local/mysql/data
#groupadd mysql
#useradd mysql -g mysql
将/usr/local/mysql的所有者及所属组改为mysql
#chown -R mysql.mysql /usr/local/mysql
#/usr/local/mysql/bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data
如果出现错误如下
2018-07-14 06:40:32 [WARNING] mysql_install_db is deprecated. Please consider switching to mysqld --initialize
2018-07-14 06:40:32 [ERROR] Child process: /usr/local/mysql/bin/mysqldterminated prematurely with errno= 32
2018-07-14 06:40:32 [ERROR] Failed to execute /usr/local/mysql/bin/mysqld --bootstrap --datadir=/usr/local/mysql/data --lc-messages-dir=/usr/local/mysql/share --lc-messages=en_US --basedir=/usr/local/mysql
-- server log begin --
-- server log end --
则执行:
#/usr/local/mysql/bin/mysqld --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data --initialize
如果出现错误如下
/usr/local/mysql/bin/mysqld: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No such file or directory
则执行
#yum -y install numactl
幸运的是没有出现错误
#rm -rf /usr/local/mysql/data
#mkdir /usr/local/mysql/data
继续安装mysql:
#/usr/local/mysql/bin/mysqld --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data --initialize
#vi /etc/my.cnf
将下面的内容覆盖原来的内容
[mysqld]
datadir=/usr/local/mysql/data
basedir=/usr/local/mysql
socket=/tmp/mysql.sock
user=mysql
port=3306
character-set-server=utf8
# 取消密码验证
skip-grant-tables
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# skip-grant-tables
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
注意:开头第一行不要有空格!!!!
备份
#cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
#chkconfig mysql on
#service mysql start
#/usr/local/mysql/bin/mysql -u root -p
进入mysql以后,设置新密码
>>use mysql;
>>update user set authentication_string=password('你的密码') where user='root';
>>flush privileges;
>>exit;
编辑/etc/my.cnf文件,将skip-grant-tables删除
#service mysql restart
#/usr/local/mysql/bin/mysql -u root -p
进入mysql以后执行
>>ALTER USER 'root'@'localhost' IDENTIFIED BY '修改后的密码';
>>exit;
#/usr/local/mysql/bin/mysql -u root -p
>>use mysql;
>>update user set host='%' where user = 'root';
>>flush privileges;
>>exit;
然后开启3306端口就可以进行连接了
关于centos7端口的问题请访问连接:http://www.jiajiajia.club/weblog/blog/artical/154