服务器配置信息:centos_7_04_64
mysql版本信息:mysql-5.7.31
mysql安装位置:/service/tools/mysql/mysql (自己创建路径稍稍复杂了些,可以简化一点)
数据位置:/service/data/mysql
1.首先创建两个目录来存储mysql位置和数据位置
#mkdir /service/tools/mysql
#mkdir /service/data/mysql
2.将下载好的mysql文件上传到/service/tools/mysql路径下
3将文件解压 #tar -zxvf mysql-5.7.31-linux-glibc2.12-i686.tar.gz
4.将解压后的文件夹更改名称为mysql: #mv /service/tools/mysql/mysql-5.7.31-linux-glibc2.12-i686/ /service/tools/mysql/mysql
5.创建mysql用户组和MySQL用户
#groupadd mysql
#useradd -r -g mysql mysql
6.关联myql用户到mysql用户组中
#chown -R mysql:mysql /service/tools/mysql/mysql/
#chown -R mysql:mysql /service/data/mysql/
#chown -R mysql /service/tools/mysql/mysql/
#chown -R mysql /service/data/mysql/
7.更改mysql安装文件夹mysql/的权限
#chmod -R 755 /service/tools/mysql/mysql/
8.安装libaio依赖包。
查询是否安装了libaio
#yum search libaio,如果没有安装,可以用下面命令来安装
#yum install libaio
9.接下来可以进行mysql的初始化操作。这部操作时可能会报很多错误,但只要耐心一点点解决,一切都会完美解决。
初始化命令:#./mysqld --user=mysql --basedir=/service/tools/mysql/mysql --datadir=/service/data/mysql --initialize
执行过程中,首先报了如下错误
# ./mysqld --user=mysql --basedir=/service/tools/mysql/mysql --datadir=/service/data/mysql --initialize
-bash: ./mysqld: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory
于是查找资料后我进行了如下操作:sudo install zlib.i686
当再次初始化操作后又报了如下错误:
./mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file
接下来进行如下操作:yum install libaio.so.1
当再次进行初始化操作时又报了错误如下:
./mysqld: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No such file or directory
接着进行如下操作:yun install libnuma.so.1
再次初始化时继续报错如下:
./mysqld: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file
接着进行如下操作:yum install libstdc++.so.6
当再次执行操作时就没有报错信息了。执行后一定要注意如下一行内容
[Note] A temporary password is generated for root@localhost: -fw2pxd1wg9X
root@localhost: 后面跟的是mysql数据库登录的临时密码,各人安装生成的临时密码不一样,在第一次登录的时候会用到,所以要妥善保存一下。
于是可以总结出,每次报错后,都再次执行报错文件的安装操作即可解决问题。
10.之后我们可以先修改配置文件信息 主要包括mysql.server 和 my.cnf
#vim /service/tools/mysql/mysql/support-files/mysql.server
找到 basedir 和 datadir,修改如下:basedir=/service/tools/mysql/mysql datadir=/service/data./mysql
修改my.cnf文件 #vim /etc/my.cnf
[client]
no-beep
socket=/tmp/mysql.sock
port=3306
[mysql]
default-character-set=utf8
[mysqld]
datadir=/service/data/mysql
basedir=/service/tools/mysql/mysql
socket=/tmp/mysql.sock
port=3306
pid-file=/service/tools/mysql/mysql/mysqld.pid
skip-name-resolve
character-set-server=utf8
default-storage-engine=INNODB
explicit_defaults_for_timestamp=true
server-id=1
max_connections=20
query_cache_size=0
table_open_cache=20
tmp_table_size=300
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
其中socket=/tmp/mysql.sock这个路径可以自己先查询一下mysql.sock文件的路径在哪里然后直接改成对应的路径就可以了。刚开始我配置的路径是 socket=/service/tools/mysql/mysql/mysql.sock 当启动MySQL服务输入初始密码时时一直报socket找不到路径
用下面命令来获取socket的路径信息:find / -name mysql.sock
11.进行如下设置
#cp /service/tools/mysql/mysql/support-files/mysql.server /etc/init.d/mysqld
#chmod 755 /etc/init.d/mysqld
12.启动mysql服务
# /etc/init.d/mysqld start
正常情况下,mysql就会启动成功了。如果仍然报错的话需要根据报错信息或者查看配置文件是否仍然有某些路径不对导致的。
13.登录MySQL
# /service/tools/mysql/mysql/bin/mysql -uroot -p
输入上面存储的初始密码
14.修改mysql的登录密码:
>mysql set password=password('root');
>mysql grant all privileges on *.* to root@'%' identified by 'root';
>mysql flush privileges;
15.可以通过mysql链接工具进行链接测试啦。用户米:root,密码:root
::