Mysql安装
1. 查看是否已安装
执行命令 rpm -qa grep mysql 查看当前系统中是否已经有mysql服务 如上图所示,表示存在mysql服务,需要先进行删除。
使用 rpm -e mysql-libs 命令进行普通删除。提示如下,表示该软件包存在其他依赖文件无法直接删除。
使用强制删除指令 rmp -e –nodeps mysql-libs,删除成功。
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
编译设置变量,执行如下命令。
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
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;
#刷新权限
文档信息
- 本文作者:chayedankase
- 本文链接:https://chayedankase.github.io/2020/01/04/Mysql%E5%AE%89%E8%A3%85/
- 版权声明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)