Linux上安装软件常见的几种方式:
- 源码编译
- 压缩包解压(一般为tar.gz)
- 编译好的安装包(RPM、DPKG等)
- 在线安装(YUM、APT等)
以上几种方式便捷性依次增加,但通用性依次下降,比如直接下载压缩包进行解压,这种方式一般需要自己做一些额外的配置工作,但只要掌握了方法,各个平台基本都适用,YUM虽然简单,但是平台受限,网络受限,必要的时候还需要增加一些特定YUM源。
几种安装方式最好都能掌握,原则上能用简单的就用简单的:YUM>RPM>tar.gz>源码
————————————————
版权声明:本文为CSDN博主「笨菜先飞」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn/qq_41510551/article/details/110731610
一、查看是否已经安装了mysql
[root@localhost ~]# rpm -qa|grep -i mysql #无输出说明没有安装
二、找到对应linux的版本进行下载
查看自己的版本:
三、 下载和安装mysql源
在官网:https://downloads.mysql/archives/community/中,选择以下版本的mysql下载:
执行如下命名:
#mkdir -p /data/software //同时创建data与子文件夹software
#cd /data/software
--下载安装包
--建议:在windows上使用迅雷下载,速度很快(我的是1M/s),然后用工具(Xftp)上传到 /data/software目录下;
#wget https://cdn.mysql/archives/mysql-5.6/mysql-5.6.44-linux-glibc2.12-x86_64.tar.gz
四、解压压缩包到目标位置
#cd /data/software
--解压压缩包
#tar -xzvf /data/software/mysql-5.6.44-linux-glibc2.12-x86_64.tar.gz
--移动并修改文件名到默认安装目录 /usr/local/mysql
#mv /data/software/mysql-5.6.44-linux-glibc2.12-x86_64 /usr/local/mysql
五、创建一个MySQL用户并更改/usr/local/mysql目录的权限(用户和组)
#useradd -r -s /sbin/nologin mysql //创建用户的时候会自动创建同名的组
#id mysql
六、修改/usr/local/mysql 目录权限,更改文件拥有者与所属组都必须为MySQL
#cd /usr/local/mysql
#pwd
#chown -R mysql.mysql /usr/local/mysql/
七、卸载mariadb-libs库文件
因为CentOS7操作系统默认安装mariadb-libs库,它与MySQL冲突,影响初始化
# yum remove mariadb-libs
八、初始化数据库
#cd /usr/local/mysql //要先进入 /usr/local/mysql
# /usr/local/mysql/scripts/mysql_install_db --user=mysql
九、配置service命令
复制support-files目录下的mysql.service脚本到/etc/init.d目录
进入 /usr/local/mysql 目录下
[root@192 mysql]# cp support-files/mysql.server /etc/init.d/mysql
十、启动MySQL
# service mysql start
十一、设置MySQL密码及验证登录
进入 /usr/local/mysql 目录下
[root@192 mysql]# bin/mysqladmin -u root password '123456'
[root@192 mysql]# bin/mysql -uroot -p
十二、登陆
# mysql -hlocalhost -uroot -p
--如果出现:-bash: mysql: command not found
--就执行: # ln -s /usr/local/mysql/bin/mysql /usr/bin --没有出现就不用执行
十三、远程连接
你会发现远程连接会失败,这是由于Mysql配置了不支持远程连接引起的。
1、在安装Mysql数据库的主机上登录root用户:mysql -u root -p
2、依次执行如下命令:
use mysql;
select host from user where user='root';
3、将Host设置为通配符%
Host列指定了允许用户登录所使用的IP,比如user=root Host=192.168.1.1。这里的意思就是说root用户只能通过192.168.1.1的客户端去访问。 user=root Host=localhost,表示只能通过本机客户端去访问。而%是个通配符,如果Host=192.168.1.%,那么就表示只要是IP地址前缀为“192.168.1.”的客户端都可以连接。如果Host=%,表示所有IP都有连接权限。
注意:在生产环境下不能为了省事将host设置为%,这样做会存在安全问题,具体的设置可以根据生产环境的IP进行设置;
update user set host = '%' where user ='root';
*注意:这时候可能会报错,执行刷新特权然后退出就可以了
flush privileges;
4、查询登录用户的授权列表
select host, user from user; //发现host已经有了%这个值
十四、新建用户并授权数据库权限
1、使用 root 管理员登陆 mysql
mysql -uroot -p123456;
2、创建新用户
'%' - 所有情况都能访问
‘localhost’ - 本机才能访问
’111.222.33.44‘ - 指定 ip 才能访问
CREATE USER 'user1'@'%' IDENTIFIED BY '07fa533360d9';
查看发现创建成功,
如果创建失败请查看:
https://wwwblogs/xphdbky/p/7403498.html
3、修改密码
update mysql.user set authentication_string=password('123456') where user='user1';
mysql> update mysql.user set authentication_string=password('*******') where user='*******'; #修改密码成功
Query OK, 1 row affected, 1 warning (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 1
mysql> flush privileges; #立即生效
Query OK, 0 rows affected (0.00 sec)
mysql> quit
Bye
常见失败情况
https://wwwblogs/wangbaobao/p/7087032.html
4、给用户添加数据库权限
这个时候访问,是除了默认生成的两个数据库,看不到任何其它的数据库:
grant all privileges on 想授权的数据库.* to 'user1'@'%';
all 可以替换为 select,delete,update,create,drop
这个时候访问,比刚才看到的数据库多出了一个刚刚添加的。
5、删除用户
Delete FROM mysql.user Where User='user1';
或者 drop user user1;
十五、可能遇到的问题
在操作 mysql 库做用户的增删修改的时候,操作完毕的时候最好使用 flush privilege 命令刷新一下权限。否则可能会修改不生效。
更多推荐
linux压缩包解压安装mysql教程
发布评论