linux 使用yum 安装mysql
1、下载yum安装源
官网:https://dev.mysql.com/downloads/repo/yum/
如图,目前的版本已经到8了,我们先把yum源下载下来,并且导入到linux服务器目录下。
然后我们执行rpm -ivh mysql80-community-release-el7-2.noarch.rpm
当然还有一种方式,就是我们直接在线下载:直接安装自己需要的版本
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm rpm -ivh mysql-community-release-el7-5.noarch.rpm
2、修改yum源,设置版本(可选)
yum repository 安装mysql的方式我们是可以选择自己的软件源的。如果不修改就跳过
[mysql-connectors-community] name=MySQL Connectors Community baseurl=http://repo.mysql.com/yum/mysql-connectors-community/el/7/$basearch/ enabled=1 gpgcheck=1 gpgkey=file:/etc/pki/rpm-gpg/RPM-GPG-KEY-mysql [mysql-tools-community] name=MySQL Tools Community baseurl=http://repo.mysql.com/yum/mysql-tools-community/el/7/$basearch/ enabled=1 gpgcheck=1 gpgkey=file:/etc/pki/rpm-gpg/RPM-GPG-KEY-mysql # Enable to use MySQL 5.5 [mysql55-community] name=MySQL 5.5 Community Server baseurl=http://repo.mysql.com/yum/mysql-5.5-community/el/7/$basearch/ enabled=0 gpgcheck=1 gpgkey=file:/etc/pki/rpm-gpg/RPM-GPG-KEY-mysql # Enable to use MySQL 5.6 [mysql56-community] name=MySQL 5.6 Community Server baseurl=http://repo.mysql.com/yum/mysql-5.6-community/el/7/$basearch/ enabled=1 gpgcheck=1 gpgkey=file:/etc/pki/rpm-gpg/RPM-GPG-KEY-mysql # Note: MySQL 5.7 is currently in development. For use at your own risk. # Please read with sub pages: https://dev.mysql.com/doc/relnotes/mysql/5.7/en/ [mysql57-community-dmr] name=MySQL 5.7 Community Server Development Milestone Release baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch/ enabled=0 gpgcheck=1 gpgkey=file:/etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
上面我是自己修改了,改为5.7. 主要修改这个enabled就可以。用哪个版本,就把那个版本下改为enabled=1,其他的全部enabled=0; 当然也可以复制粘贴一个新的版本。
查看不同版本默认启用情况:
可以看到 enabled 的情况
[root@iZszxghs0ozok0Z yum.repos.d]# yum repolist all |grep mysql !mysql-connectors-community/x86_64 MySQL Connectors Community enabled: 95 mysql-connectors-community-source MySQL Connectors Community - disabled !mysql-tools-community/x86_64 MySQL Tools Community enabled: 84 mysql-tools-community-source MySQL Tools Community - Sourc disabled mysql55-community/x86_64 MySQL 5.5 Community Server disabled mysql55-community-source MySQL 5.5 Community Server - disabled !mysql56-community/x86_64 MySQL 5.6 Community Server enabled: 446 mysql56-community-source MySQL 5.6 Community Server - disabled mysql57-community-dmr/x86_64 MySQL 5.7 Community Server De disabled mysql57-community-dmr-source MySQL 5.7 Community Server De disabled
修改完查看默认启用的最终版本情况:
[root@iZszxghs0ozok0Z yum.repos.d]# yum repolist enabled | grep mysql !mysql-connectors-community/x86_64 MySQL Connectors Community 95 !mysql-tools-community/x86_64 MySQL Tools Community 84 !mysql56-community/x86_64 MySQL 5.6 Community Server 446
可以看到,我们默认开启了 5.6 版本,
总结下这几个命令
yum repolist all |grep mysql yum repolist enabled | grep mysql
3、安装mysql
3.1检查是否安装
yum list installed | grep mysql
或者
rpm -qa | grep -i mysql
查看是否已经有安装的mysql,如果有,需要手动卸载掉。
rpm -e --nodeps 软件名
或者yum -y remove 软件名
3.2 安装
安装之前如果没有更新yum 的最好更新下
更新:yum update
安装:yum install mysql-community-server
权限设置:chown mysql:mysql -R /var/lib/mysql
初始化mysql:mysqld --initialize
启动mysql: systemctl start mysqld
查看mysql 运行状态:
systemctl status mysqld
看到active (running) 表示正常。
[root@iZszxghs0ozok0Z yum.repos.d]# systemctl status mysqld ● mysqld.service - MySQL Community Server Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled) Active: active (running) since Sat 2019-03-23 01:40:37 CST; 3 days ago Process: 9115 ExecStartPost=/usr/bin/mysql-systemd-start post (code=exited, status=0/SUCCESS) Process: 9055 ExecStartPre=/usr/bin/mysql-systemd-start pre (code=exited, status=0/SUCCESS) Main PID: 9114 (mysqld_safe) CGroup: /system.slice/mysqld.service ├─9114 /bin/sh /usr/bin/mysqld_safe --basedir=/usr └─9280 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --log-error=/var/l...
3.3 验证MySql的安装
mysqladmin --version
[root@iZszxghs0ozok0Z yum.repos.d]# mysqladmin --version mysqladmin Ver 8.42 Distrib 5.6.43, for Linux on x86_64
执行这条命令,如果未输出任何信息,说明未安装成功。
4、配置mysql
4.1 设置用户密码
直接在命令行输入mysql回车,发现已经进入了mysql服务,没有密码。
mysql安装完成后默认是没有密码的,当然,用rpm安装有个初始密码,这个本章不考虑。这里我们需要创建用户的密码。
mysqladmin -u root password "123456"
这里我将用户root ,设置密码为123456。
mysql -u root -p 123456
登录mysql,进行操作。
4.2 添加账号,设置权限
我们默认是用的root权限,如果不想直接用root这个账号远程操作数据库,需要我们手动创建一个账号。
(1)登录mysql ,这里我们已经登录了
没密码用mysql,有密码用 mysql -u root -p
(2)创建账号admin,并将密码设为123456,设置访问权限。
grant all on *.* to admin@'%' identified by "123456";
%代表任何客户机都可以连接,localhost代表只可以本机连接
当然可以分步,比如我们
grant all on *.* to admin@'localhost' identified by '123456';
这里是只添加了账号,外部还是不能访问,我们可以修改权限。
update user set host = '%' where user = 'admin';
以上两种方式都是可以的,这里只是说明,避免误解。
(3)查看下是否添加或者修改成功
use mysql; select user,host from user where user="admin"
这时候应该会输出,
mysql> select user,host from user where user='admin'; +-------+------+ | user | host | +-------+------+ | admin | % | +-------+------+ 1 row in set (0.00 sec)
(4) 更新数据库
命令:flush privileges;
5、设置远程登录
由于我们的服务器在远程,比如阿里云,我们设置远程登录,就不用像虚拟机那样了。我们只需要开放阿里云权限策略组的3306 端口。
这个这里就不贴图了,登录自己的阿里云服务器,进入安全组——添加规则——添加mysql协议,默认为3306,授权对象设为 0.0.0.0/0 就可以了。然后用sqlyog或者Navicat试一下。
如果还不行:多半是防火墙的问题,请自行百度+google 很多哈哈哈哈哈哈。