linux环境上使用压缩包安装mysql

安装前准备:

系统版本:centos7.0

mysql版本:5.7

压缩包:mysql-5.7.27-linux-glibc2.12-x86_64.tar.gz

备注:如果使用浏览器从官网下载慢的话,可以使用迅雷下载,速度会快很多。


 安装步骤:

1、解压压缩包 tar -zxvf mysql-5.7.27-linux-glibc2.12-x86_64.tar.gz 

这里我压缩包存放路径在/usr/local,后续操作都是在此路径下。

2、重命名 mv mysql-5.7.27-linux-glibc2.12-x86_64 mysql

3、创建data目录,用来存放mysql日志、biglog等文件,data文件夹路径在根目录下

cd /

mkdir data

cd data/

mkdir mysql

4、创建mysql用户组及其用户

groupadd mysql

useradd -r -g mysql mysql

 5、更改mysql目录所属的组和用户。更改权限

chown mysql:mysql -R /data/mysql

 6、配置mysql启动参数,这里只是做简单配置,更多复杂配置如超时时间、心跳时间等不做配置

vi /etc/my.cnf(若存在,先删除)

[mysqld]

server-id=1

bind-address=0.0.0.0

port=3306

user=mysql

basedir=/usr/local/mysql

datadir=/data/mysql

socket=/tmp/mysql.sock

log-error=/data/mysql/mysql.err

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

#character config

character_set_server=utf8mb4

symbolic-links=0

#log-bin=/data/mysql/mysql-bin

#skip-grant-tables

 7、初始化mysql

cd /usr/local/mysql/bin/

 ./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize

报错:

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

解决办法:

yum install -y libaio  //安装后在初始化就OK了

 8、查看初始密码,并且复制下来,为后面登录使用

vi /data/mysql/mysql.err

 9、启动mysql ------> service mysqld start

报错:

Redirecting to /bin/systemctl start  mysqld.service

Failed to issue method call: Unit mysqld.service failed to load: No such file or directory.

解决办法:将mysql.server放置到/etc/init.d/mysql中

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

出现Starting MySQL.. SUCCESS!

则说明mysql安装成功

 10、登录mysql 并且修改密码 mysql -u root -p

报错:

-bash: mysql: 未找到命令

解决办法:

原因:这是由于系统默认会查找/usr/bin下的命令,如果这个命令不在这个目录下,当然会找不到命令,我们需要做的就是映射一个链接到/usr/bin目录下,相当于建立一个链接文件。

首先得知道mysql命令或mysqladmin命令的完整路径,比如mysql的路径是:/usr/local/mysql/bin/mysql

命令:ln -s /usr/local/mysql/bin/mysql /usr/bin

 11、修改初始密码,并刷新

SET PASSWORD = PASSWORD('123456');

(重置初始密码,必须执行,不然没法进行后续操作)

use mysql(选择数据库)

update user set host = '%' where user = 'root';

GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root";

update user set authentication_string=password("123456") where user="root";

注意:mysql5.7版本表字段中密码字段为authentication_string

select host, user from user;

flush privileges;

12、mysql设置开机自动启动,步骤如下:

1、cd /etc/init.d/         先进入到该目录下

2、cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql  

将服务文件拷贝到init.d下,并重命名为mysql(我的mysql服务在usr/local下)

3、chmod +x /etc/init.d/mysql    赋予可执行权限

4、chkconfig --add mysql          添加服务

5、chkconfig --list                      显示服务列表

6、如果看到mysql的服务,并且3,4,5都是on的话则成功

如果是off,则键入chkconfig --level 345 mysql on

7、init 6 重启linux系统,发现mysql已经自动启动了。

你可能感兴趣的:(mysql,数据库)