Mysql安装

2020/01/04 linux 共 1972 字,约 6 分钟

Mysql安装

1. 查看是否已安装

执行命令 rpm -qagrep mysql 查看当前系统中是否已经有mysql服务

image-20200104104020629

如上图所示,表示存在mysql服务,需要先进行删除。

使用 rpm -e mysql-libs 命令进行普通删除。提示如下,表示该软件包存在其他依赖文件无法直接删除。

image-20200104104835657

使用强制删除指令 rmp -e –nodeps mysql-libs,删除成功。

image-20200104105153034

2.上传安装包

将安装包 mysql-5.6.14.tar.gz 上传至服务器 /opt目录下,此目录专门放置软件安装包。

3.解压安装包

进入 /opt目录,

执行 tar -zxvf mysql-5.6.14.tar.gz解压安装包。

4.编译并进行安装

编译时需要gcc环境,所以我们先安装gcc

执行命令 yum -y install make gcc-c++ cmake bison-devel ncurses-devel

进入解压后产生的目录

cd /opt/mysql-5.6.14

image-20200104125640843

编译设置变量,执行如下命令。

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci

最后的编译并安装

执行 make && make install。 需要等待较长时间。

5.配置mysql

设置权限,查看是否有mysql用户。

执行命令

cat /etc/passwd 查看用户列表

cat /etc/group 查看用户组列表

如果没有就创建

groupadd mysql

useradd -g mysql mysql

修改/usr/local/mysql的所有权

-R 表示递归修改, mysql:mysql 所有权赋予mysql用户及mysql用户组。

chown -R mysql:mysql /usr/local/mysql

初始化配置,进入安装路径(在执行下面的指令),执行初始化配置脚本,创建系统自带的数据库和表

cd /usr/local/mysql

scripts/mysql_install_db –basedir=/usr/local/mysql –datadir=/usr/local/mysql/data –user=mysql

image-20200104134225365

6.启动mysql

mysql启动时会先去 寻找/etc/my.cnf配置文件,找不到时,才会使用安装目录下的my.cnf文件。

所以,先看看/etc/my.cnf是否存在,如果存在则进行改名操作,保证启动mysql时能使用我们的配置文件

mv /etc/my.cnf /etc/my.cnf.bak

添加服务,拷贝服务脚本到init.d目录,并设置开机启动

[注意在 /usr/local/mysql 下执行]

复制启动脚本到init.d目录

cp support-files/mysql.server /etc/init.d/mysql

设置脚本自启动

chkconfig mysql on

service mysql start –启动MySQL

执行下面的命令修改root密码

cd /usr/local/mysql/bin

./mysql -uroot

mysql> SET PASSWORD = PASSWORD(‘root’);

7.设置远程可登陆

登陆mysql,切换到mysql数据库,并查询user表

select host,user from user;

修改允许登陆的ip,允许所有ip登陆root用户。

update user set host = ‘%’ where user = ‘root’

grant all privileges on * . * to root@’%’ identified by ‘XXX’ with grant option;

xxx是密码,分配权限,%指所有ip,均可以使用root用户和XXX密码来远程登录。

设置完,刷新一下权限 flush privileges

8. 创建表及用户授权

create user 'xyyb'@'%' identified by '*****'
grant select,insert,update,delete,create on xyyb.* to xyyb;
#刷新权限

文档信息

Search

    Table of Contents