linux系统安装MySQL服务,详细图文教程

注:linux系统在安装操作系统时,如果选择了开发工具和兼容库后,一般默认都会安装MySQL服务的部分程序包。如果我们要自定义的安装全新的MySQL服务,就必须先把这些已经安装的程序包都卸载掉。否则,后面这些程序包会给我们带来很多麻烦。

1、查看系统里是否有安装MySQL相关的程序包。

    rpm -qa | grep mysql

我这里是没有的。可能小伙伴们的系统里会有

2、查看系统里面是否有安装mariadb相关的程序包(mariadb是一种轻量级的MySQL数据库)

    rpm -qa | grep mariadb

我的系统里面有一个相关的程序包

3、把前面两步找出来的程序包都参照如下方法卸载掉即可

    rpm -e xxx(程序名)

    例如:rpm -e mariadb-libs-5.5.60-1.el7_5.x86_64 --nodeps

然后,再执行1和2步的方法查看,是否已经删除完全了

4、下载MySQL的安装包,去官网下载。MySQL的安装方法,在版本上区别很大。不同的版本安装方法不一样的。但是以我的经验,新一点的版本区别不太大

官网下载地址:https://downloads.mysql.com/archives/community/

我选择的如下图的版本

5、然后上传到服务器里面。这里不用过多的说明。您可以使用xshell工具或其他的软件。上传的目录可以随意找个临时目录即可。

6、然后对上传的文件进行解压。

    tar -zxvf xxx(程序名)

    例:tar -zxvf mysql-5.7.35-linux-glibc2.12-x86_64.tar.gz

上图可以看到,解压出了一个文件夹。

7、我们需要把这个解压出来的文件夹拷贝到/usr/local/目录下,并取名叫mysql。没有版本信息。

    cp -R mysql-5.7.35-linux-glibc2.12-x86_64 /usr/local/mysql 因为是文件夹,所有拷贝时加上参数 -R ,后面直接给出拷贝到新目录后的目录名mysql

8、查看系统里是否有mysql用户和组,可以使用 groups mysql 命令查看。

我们的系统里面没有,所以,要创建。创建用户和组使用useradd命令合groupadd命令

    groupadd mysql && useradd -r -g mysql mysql

9、创建我们数据仓库。(即自定义数据库存储表的目录)并给予mysql用户权限

    mkdir -p /data/mysql

    chown mysql:mysql -R /data/mysql

    

10、修改或创建/etc/my.cnf文件。如果以前安装过MySQL可能就会有这个文件,我们修改为如下内容。如果没有就创建这个名字的文件,并写入如下内容。

      vim /etc/my.cnf

datadir是数据存储的目录

basedir是数据库的基本目录

socket是数据库运行的接口

log-error是错误日志的目录

character是指编码

11、初始化我们的MySQL数据库的基本参数。

    cd /usr/local/mysql/bin 进入MySQL自带的可执行程序的目录

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

12、查看初始登录密码

    cat /data/mysql/mysql.err

上图显示,在结尾的root@localhost:后面的部分,就是密码。我们可以鼠标复制一下。

13、启动MySQL服务。

    cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql 把启动文件拷贝到init.d目录,使得以后启动服务方便。

    service mysql start 启动MySQL服务

14、登录MySQL,并修改密码。

    /usr/local/mysql/bin/mysql -u root -p 目前要使用登录命令mysql,还需要进入/usr/local/mysql/bin/目录

Enter password: <这里粘贴刚才复制的初始密码>回车即可登录

看到了mysql> 标识符,就代表登录成功了。

下面修改密码。修改密码有两个办法。可以在/etc/my.cnf文件的[mysqld]下面添加一行skip-grant-tables,然后重启mysql,就可以免密登录mysql。如果您不想这样,怕不安全,可以执行修改密码操作。

    service mysql retart

或者修改密码:

    set password for 用户名@localhost=password('新密码');

    例:set password for root@localhost=password('123456');

刷新规则:flush privileges

退出mysql,使用新密码登录。

新密码登录成功。

15、到此,mysql已经安装完成了。下面我们可以测试一下,创建一个数据库试试。

    create database students;

创建成功。

16、谢谢大家!!让我们一起学习进步吧。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
LINUX重启MYSQL的命令 . 分类: Linux 2010-06-25 10:21 6367人阅读 评论(0) 收藏 举报 如何启动/停止/重启MySQL 一、启动方式 1、使用 service 启动:service mysqld start 2、使用 mysqld 脚本启动:/etc/inint.d/mysqld start 3、使用 safe_mysqld 启动:safe_mysqld& 二、停止 1、使用 service 启动:service mysqld stop 2、使用 mysqld 脚本启动:/etc/inint.d/mysqld stop 3、 mysqladmin shutdown 三、重启 1、使用 service 启动:service mysqld restart 2、使用 mysqld 脚本启动:/etc/inint.d/mysqld restart 提问 编辑摘要 如何启动/停止/重启MySQL 一、启动方式 1、使用 service 启动:service mysqld start 2、使用 mysqld 脚本启动:/etc/inint.d/mysqld start 3、使用 safe_mysqld 启动:safe_mysqld& 二、停止 1、使用 service 启动:service mysqld stop 2、使用 mysqld 脚本启动:/etc/inint.d/mysqld stop 3、 mysqladmin shutdown 三、重启 1、使用 service 启动:service mysqld restart 2、使用 mysqld 脚本启动:/etc/inint.d/mysqld restart 刚开始学 mysql时都是用redhat自带的。启动是什么 /rc.d/init.d/ start 这很简单,但是后来越学越多,系统自带的 mysql,有的是版本太低,有的是与 自己想要装的web服务需要的低版本的mysql 后来自己学着以tar的方式安装 mysql,我的mysql装在/usr/local/mysql目录下启 动碰到过很多问题。最常见的是: ERROR 2002: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (111) 解决办法: [root@test mysql]# /usr/local/mysql/bin/mysqladmin -u root / > -S /var/lib/mysql/mysql.sock password 'your.passwd' 或者做个连接 ln -s /var/lib/mysql/mysql.sock /tmp 其实提示找不到 /tmp/mysql.sock有时也并不是/tmp目录下没这个文件,是启动 命令不对,我碰到过 常见的几种启动方式,自己也不是记得很清楚,如果你确定tmp下有mysql.sock这 个文件不妨试试另外的几个命令 /usr/local/mysql/bin/mysql -u root -p /usr/local/mysql/bin/mysqld --user=mysql& /usr/local/mysql/bin/mysqld --user=root& /usr/local/mysql/bin/mysqld_safe --user=root& /usr/local/mysql/bin/mysqld_safe --user=mysql& /usr/local/mysql/bin/safe_mysqld--uer=root&(注意 safe_mysqld与mysqld_safe是不同的,&表示mysql在后台运行)我的就会报错了 STOPPING server from pid file /usr/local/mysql/data/localhost.localdomain.pid 060304 11:46:21 mysqld ended 这是权限问题,我的mysql目录属于root用户,也属于root群组,改用 mysqld_safe启动就没问题了, 大家只要注意这几个 mysql,safe_mysqld,mysqld_safe,mysqld,mysqladmin.多试 几次 其实有时mysql已经正常启动了,查看mysql是否启动命令 ps -aux | grep mysqld 会看到如下类似内容 mysql 6394 0.0 1.5 10528 992 pts/3 S 16:16 0:00 /usr/local/mysql/ mysql 6395 0.0 1.5 10528 992 pts/3 S 16:16 0:00 /usr/local/mysql/ mysql 6396 0.0 1.5 10528 992 pts/3 S 16:16 0:00 /usr/local/mysql/ root 6422 0.0 1.1 2408 732 pts/3 S 16:20 0:00 grep mysql 查看mysql是否在监听端口命令 netstat -tl | grep mysql 会看到如下类似内容 tcp 0 0 *:mysql *:* LISTEN
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值