`

linux下yum安装 mysql 及详细配置及默认目录修改

 
阅读更多

一、[root@sample ~]# yum -y install mysql-server  ← 安装MySQL
.....略
Installed: mysql-server.i386 0:4.1.20-1.RHEL4.1
Dependency Installed: mysql.i386 0:4.1.20-1.RHEL4.1 perl-DBD-MySQL.i386 0:2.9004-3.1 perl-DBI.i386 0:1.40-8
Complete!

二、配置
[root@sample ~]# vi /etc/my.cnf  ← 编辑MySQL的配置文件

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
old_passwords=1  ← 找到这一行,在这一行的下面添加新的规则,让MySQL的默认编码为UTF-8
default-character-set = gbk  ← 添加这一行
然后在配置文件的文尾填加如下语句:

[mysql]
default-character-set = gbk

三、启动MySQL服务

[root@sample ~]# chkconfig mysqld on  ← 设置MySQL服务随系统启动自启动

如果上述命令失败,显示 bash: chkconfig: command not found,见本文最下面解决方法

[root@sample ~]# chkconfig --list mysqld  ← 确认MySQL自启动
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off  ← 如果2--5为on的状态就OK

[root@sample ~]# /etc/rc.d/init.d/mysqld start  ← 启动MySQL服务

启动mysql                                              [确定]

备 注:如果这一部执行失败有可能是/var/lib/mysql 没有数据库文件,会报【 Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist】,这是需要执行mysql_install_db命令就OK了。

四、MySQL的root用户设置密码
MySQL在刚刚被安装的时候,它的root用户是没有被设置密码的。首先来设置MySQL的root密码。

[root@sample ~]# mysql -u root  ← 用root用户登录MySQL服务器

:如果出现错误Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2),

:则查看mysql是否启动 /etc/rc.d/init.d/mysqld status, 没有启动则/etc/rc.d/init.d/mysqld start
mysql> select user,host,password from mysql.user;  ← 查看用户信息
mysql>set password for root@localhost=password('在这里填入root密码');  ← 设置root密码
mysql>set password for root@域名=password('在这里填入root密码');
mysql> delete from mysql.user where user='';  ← 删除匿名用户
mysql> exit  ← 退出MySQL服务器【测试设置的密码是否正确】


五、删除测试用数据库
mysql> show databases;  ← 查看系统已存在的数据库
mysql> drop database test;  ← 删除名为test的空数据库

六、对MySQL进行测试。包括建立新用户,以及用对关系性数据库进行数据库操作的指令来试着建立数据库及数据表。这里,新建用户以 sleinetpub为例。

[root@sample ~]# mysql -u root -p  ← 通过密码用root登录
Enter password:  ← 在这里输入密码

mysql> grant all privileges on test.* to sleinetpub@localhost identified by '在这里定义密码';  ← 建立对test数据库有完全操作权限的名为sleinetpub的用户
mysql> select user from mysql.user where user='sleinetpub';  ← 确认sleinetpub用户的存在与否
mysql> exit  ← 退出MySQL服务器
[root@sample ~]# mysql -u sleinetpub -p  ← 用新建立的sleinetpub用户登录MySQL服务器
Enter password:  ← 在这里输入密码
mysql> create database test;  ← 建立名为test的数据库
mysql> show databases;  ← 查看系统已存在的数据库
mysql> use test  ← 连接到数据库
mysql> create table test(num int, name varchar(50));  ← 在数据库中建立表
mysql> show tables;  ← 查看数据库中已存在的表
mysql> drop table test;  ← 删除表
mysql> show databases;  ← 查看已存在的数据库
Empty set (0.01 sec)  ← 确认test数据库已被删除(这里非root用户的关系,看不到名为mysql的数据库)
mysql> exit  ← 退出MySQL服务器


七、删除测试用过的遗留用户
[root@sample ~]# mysql -u root -p  ← 通过密码用root登录
Enter password:  ← 在这里输入密码
mysql> revoke all privileges on *.* from sleinetpub@localhost;  ← 取消sleinetpub用户对数据库的操作权限
mysql> delete from mysql.user where user='sleinetpub' and host='localhost';  ← 删除sleinetpub用户
mysql> select user from mysql.user where user='sleinetpub';  ← 查找用户sleinetpub,确认已删除与否
Empty set (0.01 sec)  ← 确认sleinetpub用户已不存在
mysql> flush privileges;  ← 刷新,使以上操作生效
mysql> exit

八、最后,重新启动一次HTTP服务。

[root@undefined /]# /etc/rc.d/init.d/mysqld stop  ← 停止HTTP服务
停止mysql                                              [确定]

[root@undefined /]# /etc/rc.d/init.d/mysqld start ← 启动HTTP服务
启动mysql                                              [确定]

 

 

注: 配置文件: /etc/my.cnf中 datadir=/var/lib/mysql 定义的为数据库存放地址,修改数据库存放地址见本文最下面

 

bash: chkconfig: command not found错误:

[root@xuniji ~]# chkconfig
bash: chkconfig: command not found -------->环境变量里没有chkconfig的目录
[root@xuniji ~]# rpm -aq |grep chkconfig ------看是否安装了chkconfig
chkconfig-1.3.30.1-2
[root@xuniji ~]# export PATH=/sbin:$PATH
[root@xuniji ~]# chkconfig
chkconfig version 1.3.30.1 - Copyright (C) 1997-2000 Red Hat, Inc.
This may be freely redistributed under the terms of the GNU Public License.

usage:   chkconfig --list [name]
         chkconfig --add 
         chkconfig --del 
         chkconfig [--level ]

[root@xuniji ~]# echo $PATH ------------打印环境变量
/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/home/gtl/bin
[root@xuniji ~]# PATH="$PATH":/sbin ------环境变量里加进去:/sbin
[root@xuniji ~]# echo $PATH   ------------再次打印看是否成功加进去
/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/home/gtl/bin:/sbin

到这里就解决了!

 

修改数据库存放目录 :

默认在:/var/lib/mysql/ 按目录存放

0.关闭mysql

1.移动/var/lib/mysql/目录下的数据库目录到自定义目录,如:/home/mysql_datas

        原数据库目录结构

               比如/var/lib/mysql/mysql

                      /var/lib/mysql/business

                      /var/lib/mysql/upper等

        移动后结构

               比如/home/mysql_datas/mysql

                      /home/mysql_datas/business

                      /home/mysql_datas/upper等

2.修改/etc/my.cnf中的如下两项到新目录的位置

datadir=/home/mysql_datas

3.修改mysql启动脚本中上面两项的位置

          #vi /etc/rc.d/init.d/mysqld

         get_mysql_option mysqld datadir "/var/lib/mysql"改为

          get_mysql_option mysqld datadir "/home/mysql_datas/mysql"

4.启动mysql

 

 

 

yum安装的重要目录

#(a)数据库目录 /var/lib/mysql/ #(b)配置文件 /usr/share /mysql(mysql.server命令及配置文件) #(c)相关命令 /usr/bin(mysqladmin mysqldump等命令) #(d)启动脚本 /etc/rc.d/init.d/(启动脚本文件mysql的目录)

 

mysqld_safe --user=root --skip-grant-tables

绕过密码登录,必须在新的窗口打开一个链接

 

分享到:
评论

相关推荐

    linux下mysql的rpm安装包

    这是在/usr/share/mysql 目录下生成一些 文件,其中有一个文件名为:my-medium.cnf 将其拷贝到/etc/my.cnf中 # cp /usr/share/mysql/my-medium.cnf /etc/my.cnf 现在就安装完了,可以看看他运行的进程: # ps -ef | ...

    linux环境下安装mysql数据库的详细教程

    2)也可以自己在网上下载mysql服务,通过xftp传输至Linux系统,自己安装(一般安装在usr或opt目录下) 2.启动数据库 安装完毕,执行命令service mysqld start 3.登录数据库 mysql -u root -p回车后输入密码(mysql...

    《Linux服务器配置与管理》教学课件—第-11-章--MySQL-服务器配置.pptx

    在MySQL 5.7仓库安装完成后,会在"/etc/yum.repos.d/"目录下生成两个文件,即mysql-community.repo文件和mysql-community-source.repo文件,我们主要查看mysql-community.repo文件中的配置,在该文件中默认会包含几...

    Linux入门及软件安装

    01/ 大数据课程介绍 1 02/ 基础课程内容介绍 1 03/ Linux基础 2 3.1 系统安装准备 2 ...4.4 RPM方式软件安装——MySql数据库安装 31 4.5 YUM方式软件安装 34 4.6 C语言软件源码编译安装——redis服务器安装 39

    Linux下mysql 5.7 部署及远程访问配置

    将RPM包通过Xshell传到Linux服务器上Opt目录下,输入命令:sudo rpm -Uvh mysql80-community-release-fc28-1.noarch.rpm 第二步 选择自己需要的版本(默认8.0) 这里我们手动配置成5.7版本,输入如下命令: sudo ...

    CentOS Linux更改MySQL数据库目录位置具体操作

    引言: 由于MySQL的数据库太大,默认安装的/var盘已经再也无法容纳新增加的数据,没有办法,只能想办法转移数据的目录。 下面我整理一下把MySQL从/var/lib/mysql目录下面转移到/home/mysql_data/mysql目录的具体操作...

    mysql安装与基础配置

    MySql学习笔记-mysql安装与基础配置 环境介绍 Centos7 MySql5.7 MySql5.7的安装 卸载默认数据库 mariadb rpm -qa | grep mariadb //列出所有被安装的rpm package yum -y remove mariadb //卸载mariadb相关的rpm ...

    Centos中安装多个mysql数据的配置实例

    LINUX操作系统:centOS6.3 64bit(安装了系统默认开发包)数据库一:MYSQL版本:mysql-5.0.56PORT:3306系统目录:/usr/local/mysql3306数据库二:MYSQL版本:mysql-5.1.72PORT:3307系统目录:/usr/local/mysql3307 ...

    MySQL数据库迁移data文件夹位置详细步骤

    由于yum安装mysql的时候,数据库的data目录默认是在/var/lib下,出于数据安全性的考虑需要把它挪到/data分区。步骤如下:一、关闭apache和mysql. 代码如下:service httpd stopservice mysqld stop二、将/var/lib下的...

    CentOS7使用rpm包安装mysql 5.7.18

    CentOS7默认安装MariaDB而不是MySQL,而且yum服务器上也移除了MySQL相关的软件包。因为MariaDB和MySQL可能会冲突,故先卸载MariaDB。 1、查看已安装的MariaDB相关rpm包。 rpm -qa | grep mariadb 2、查看已安装的...

    mysql5.7.19安装包64位rpm格式

    CentOS7默认安装MariaDB而不是MySQL,而且yum服务器上也移除了MySQL相关的软件包。因为MariaDB和MySQL可能会冲突,故先卸载MariaDB。 1、安装新版mysql之前,我们需要将系统自带的mariadb-lib卸载 [root@iZwz94qazh...

    阿里云服务器linux web环境一键安装包 1.5.5

    debian和ubuntu下默认shell是dash,执行 sudo dpkg-reconfigure dash 选择no,切换到bash环境 cd /home && mkdir tmp && cd tmp xftp上传sh目录 cd sh && chmod +x install*.sh && ./install.sh 安装完成后请...

    万岳网校源码v2.2.0 web版+采用原生语言开发+多端互通+支持多种直播课堂形式

    万岳网校源码采用原生语言开发,多端互通,集“教学、学习、管理、互动、营销”功能...建立完站点,由于是 tp5 框架,所以我们要修改下网站根目录 配置 ssl 证书 可在腾讯云申请免费 ssl 证书, 填写好信息点击下一步,

    使用nginx反向代理实现直接访问域名而不用输入端口

    首先是nginx安装 [root@iZbp1fuxe9jel2667kxu6eZ ~]# yum install nginx -y 进入目录 [root@iZbp1fuxe9jel2667kxu6eZ ~]# cd /etc/nginx 修改配置文件 [root@iZbp1fuxe9jel2667kxu6eZ nginx]# vim nginx.conf ...

    Liunx系统命令中tree命令详解

    linux中的tree命令默认并不会安装,下面来先看看tree安装 安装方法 tar -zxvf tree-1.7.0.tgz cd tree-1.7.0 make cp -af tree /usr/bin 或者 yum install -y tree tree命令详解  -a 显示所有文件和目录。  -A...

    万岳教育平台源码-PHP

    搭建好了之后会提示:成功创建站点建立完站点,由于是tp5框架,所以我们要修改下网站根目录配置ssl证书可在腾讯云申请免费ssl证书,填写好信息点击下一步,可选择手动DNS验证,点击确认申请很久要求添加一条解析记录,等...

    万岳开源网校系统源码-Asp

    万岳网校源码采用原生语言开发,多端互通,集“教学、学习、管理、互动、营销”功能模块为一体。满足多种线上教学场景,支持大班课、小班课、...建立完站点,由于是tp5框架,所以我们要修改下网站根目录 配置ssl证书 可

    python入门到高级全栈工程师培训 第3期 附课件代码

    08 linux操作系统目录结构 09 目录及文件操作 第4章 01 上节课复习 02 创建用户相关的文件 03 用户增删该查及组相关操作 04 对文件的权限管理 05 对目录的权限管理 06 权限管理补充 07 属主属组及基于数字的权限...

Global site tag (gtag.js) - Google Analytics