`
tl_oni
  • 浏览: 29654 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

通过rpm包安装、配置及卸载mysql的详细过程

阅读更多

 

su -  切换用户,可带环境信息

 

MySql 安装过程

root 用户身份操作

su -

1、  建立组及用户

[root@WebSer]# groupadd mysql

[root@WebSer]# useradd -g mysql

[root@WebSer]# passwd mysql

2、  安装软件

服务端 MySQL-server-community-5.1.46-1.rhel5

客户端 MySQL-client-community-5.1.46-1.rhel

1)        安装服务端软件

[root@WebSer tools]# rpm -ivh MySQL-server-community-5.1.46-1.rhel5.i386.rpm

2)        检查 Mysql 默认的端口是 3306 是否开启

[root@WebSer tools]#netstat –nat

     如没有开启可能是 linux 的服务器火墙关闭了 3306 端口

[root@WebSer tools]#  vi /etc/sysconfig/iptables

加入

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

保存退出

[root@WebSer tools]# service iptables restart

Active Internet connections (servers and established)
  Proto Recv-Q Send-Q Local Address
  Foreign Address State  
  tcp00 0.0.0.0:3306 0.0.0.0:*
  LISTEN  
 
上面显示可以看出 MySQL 服务已经启动。

注:如果Windows 的客户端不能访问linux 的服务器,远程报错:ERROR 2003(HY000):Can't connect to MySQL server on '192.168.0.249' (10065) linux 的服务器火墙关闭了3306 端口,解决方法同上。

3)        安装客户端

[root@WebSer tools]# rpm -ivh MySQL- client -community-5.1.46-1.rhel5.i386.rpm

4)        登录 MySQL

登录 MySQL 的命令是 mysql mysql 的使用语法如下:
  mysql [-u username] [-h host] [-p[password]] [dbname]
username
password 分别是 MySQL 的用户名与密码, mysql 的初始管理帐号是 root ,没有密码,注意:这个 root 用户不是 Linux 的系统用户。 MySQL 默认用户是 root ,由于 初始没有密码,第一次进时只需键入 mysql 即可。
[root@test1 local]# mysql

  Welcome to the MySQL monitor.   Commands end with ; or \g.
Your MySQL connection id is 1 to server version: 4.0.16-standard
  Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
  mysql>
出现了 “mysql>” 提示符,恭喜你,安装成功!
增加了密码后的登录格式如下:
  mysql -u root -p
Enter password: (
输入密码 )
其中 -u 后跟的是用户名, -p 要求输入密码,回车后在输入密码处输入密码。

注意:这个 mysql 文件在 /usr/bin 目录下,与后面讲的启动文件 /etc/init.d/mysql 不是一个文件。

5)        MySQL 的几个重要目录

MySQL 安装完成后不象 SQL Server 默认安装在一个目录,它的数据库文件、配置文件和命令文件分别在不同的目录,了解这些目录非常重要,尤其对于 Linux 的初学者,因为 Linux 本身的目录结构就比较复杂,如果搞不清楚 MySQL 的安装目录那就无从谈起深入学习。

 
下面就介绍一下这几个目录。

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

6)        修改登录密码

MySQL 默认没有密码,安装完毕增加密码的重要性是不言而喻的。

  a
、命令
  usr/bin/mysqladmin -u root password 'new-password'
 
格式: mysqladmin -u 用户名 -p 旧密码 password 新密码

  b
、例子
 
1 :给 root 加个密码 123456
 
键入以下命令
  [root@test1 local]# /usr/bin/mysqladmin -u root password 123456
 
注:因为开始时 root 没有密码,所以 -p 旧密码一项就可以省略了。

  c
、测试是否修改成功
      1
)不用密码登录
    [root@test1 local]# mysql
    ERROR 1045: Access denied for user: 'root@localhost' (Using password: NO)
   
显示错误,说明密码已经修改。
    2
)用修改后的密码登录
    [root@test1 local]# mysql -u root -p
    Enter password: (
输入修改后的密码 123456)
  Welcome to the MySQL monitor.
  Commands end with ; or \g.
  Your MySQL connection id is 4 to server version: 4.0.16-standard
  Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
  mysql>
 
成功!
 
这是通过 mysqladmin 命令修改口令,也可通过修改库来更改口令。

7)        启动与停止

A 、启动
  MySQL
安装完成后启动文件 mysql /etc/init.d 目录下,在需要启动时运行下面命令即可。
  [root@test1 init.d]# /etc/init.d/mysql start
    
service mysql start
  B
、停止
    /usr/bin/mysqladmin -u root -p shutdown

service mysql stop
C
、自动启动
   1
)察看 mysql 是否在自动启动列表中
    [root@test1 local]# /sbin/chkconfig --list
    2
)把 MySQL 添加到你系统的启动服务组里面去
   [root@test1 local]#
  /sbin/chkconfig--add mysql
   3
)把 MySQL 从启动服务组里面删除。
   [root@test1 local]# /sbin/chkconfig --del  mysql

8)        更改 MySQL 目录

MySQL 默认的数据文件存储目录为 /var/lib/mysql 。假如要把目录移到 /home/data 下需要进行下面几步:

  a
home 目录下建立 data 目录
  cd /home
  mkdir data

  b
、把 MySQL 服务进程停掉:
  mysqladmin -u root -p shutdown

  c
、把 /var/lib/mysql 整个目录移到 /home/data
  mv /var/lib/mysql
  /home/data/
 
这样就把 MySQL 的数据文件移动到了 /home/data/mysql

  d
、找到 my.cnf 配置文件
 
如果 /etc/ 目录下没有 my.cnf 配置文件,请到 /usr/share/mysql/ 下找到 *.cnf 文件,拷贝其中一个到 /etc/ 并改名为 my.cnf) 中。命令如下:
  [root@test1 mysql]# cp /usr/share/mysql/my-medium.cnf
  /etc/my.cnf

  e
、编辑 MySQL 的配置文件 /etc/my.cnf
 
为保证 MySQL 能够正常工作,需要指明 mysql.sock 文件的产生位置。 修改 socket=/var/lib/mysql/mysql.sock 一行中等号右边的值为: /home/mysql/mysql.sock 。操作如下:
  vi
  my.cnf   ( vi 工具编辑 my.cnf 文件,找到下列数据修改之 )
  # The MySQL server
  [mysqld]
  port   = 3306
  #socket   = /var/lib/mysql/mysql.sock (原内容,为了更稳妥用 “#” 注释此行)
  socket   = /home/data/mysql/mysql.sock  (加上此行)

  f
、修改 MySQL 启动脚本 /etc/rc.d/init.d/mysql
 
最后,需要修改 MySQL 启动脚本 /etc/rc.d/init.d/mysql ,把其中 datadir=/var/lib/mysql 一行中,等号右边的路径改成你现在的实际存放路径: home/data/mysql
  [root@test1 etc]# vi
  /etc/rc.d/init.d/mysql
  #datadir=/var/lib/mysql
(注释此行)
  datadir=/home/data/mysql
(加上此行)

  g
、重新启动 MySQL 服务
  /etc/rc.d/init.d/mysql
  start
 
或用 reboot 命令重启 Linux
 
如果工作正常移动就成功了,否则对照前面的 7 步再检查一下。

h 、将 mysql 启动权限赋给 mysql 用户

chown -R mysql:mysql /home/data/mysql

 

9)        设置 mysql 数据库默认使用 InnoDB 数据引擎

编辑 MySQL 的配置文件 /etc/my.cnf

# The MySQL server

[mysqld]

default-storage-engine=INNODB

innodb_data_home_dir = /home/data/mysql

innodb_data_file_path = ibdata1:10M:autoextend

innodb_log_group_home_dir = /home/data/mysql

#Service mysql restart

系统会自动在 /home/data/mysql 下建立 ibdata1 目录

10)     设置数据库默认编码为 utf8

编辑 MySQL 的配置文件 /etc/my.cnf

[client]

default-character-set = utf8

[mysqld]

default-character-set = utf8

#Service mysql restart

11)     添加远程登录权限

格式: grant 权限 on 数据库对象 to 用户

mysql> GRANT  ALL  PRIVILEGES  ON  *.*  TO  'root'@'%'  IDENTIFIED  BY  'root'  WITH  GRANT  OPTION;

mysql> FLUSH PRIVILEGES;
mysql> quit

 

   到些 MYSQL 软件全部安装完成。

 

3、  MySQL 的常用操作

1)        显示数据库   show databases;

2)        进入数据库   use mysql

3)        显示数据库中的表 show tables;

4)        显示数据表的结构: describe 表名 ;

5)        建库: create database 库名 ;

如: CREATE DATABASE tvscs DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

6)        建表: use 库名; create table 表名 ( 字段设定列表 )

例如:在刚创建的 aaa 库中建立表 name, 表中有 id( 序号,自动增长 ) xm (姓名) ,xb (性别) ,csny (出身年月)四个字段
use aaa;
mysql> create table name (id int(3) auto_increment not null primary key, xm char(8),xb char(2),csny date);
可以用 describe 命令察看刚建立的表结构。

7)        增加记录 nsert into name values('',' 张三 ',' ','1971-10-01');

8)        修改纪录 update name set csny='1971-01-10' where xm=' 张三 ';

9)        删库 drop database 库名 ;

10)     删表 drop table 表名;

11)     增加字段 alter table dbname add column < 字段名 >< 字段选项 >

12)     修改字段 alter table dbname change < 旧字段名 > < 新字段名 >< 选项 >

13)     删除字段   alter table dbname drop column < 字段名 >  

14)     修改表名

15)      

4、  增加 MySQL 用户

格式: grant select on 数据库 .* to 用户名 @ 登录主机 identified by " 密码 "
1 、增加一个用户 user_1 密码为 123 ,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以 root 用户连入 MySQL ,然后键入以下命令:

mysql> grant select,insert,update,delete on *.* to ‘user_1’@’%’ Identified by ‘123’;
1 增加的用户是十分危险的,如果知道了 user_1 的密码,那么他就可以在网上的任何一台电脑上登录你的 MySQL 数据库并对你的数据为所欲为了,解决办法见例 2

2 、增加一个用户 user_2 密码为 123, 让此用户只可以在 localhost 上登录,并可以对数据库 aaa 进行查询、插入、修改、删除的操作 localhost 指本地主机,即 MySQL 数据库所在的那台主机),这样用户即使用知道 user_2 的密码,他也无法从网上直接访问数据库,只能通过 MYSQL 主机来操作 aaa 库。

mysql>grant select,insert,update,delete on aaa.* to user_2@localhost identified by "123";

用新增的用户如果登录不了 MySQL ,在登录时用如下命令:

mysql -u user_1 –p -h 192.168.113.50
-h 后跟的是要登录主机的 ip 地址)

5、  备份与恢复

1)        备份

例如:将上例创建的 aaa 库备份到文件 back_aaa


[root@test1 root]# cd /home/data/mysql (
进入到库目录,本例库已由 val/lib/mysql 转到 /home/data/mysql ,见上述第七部分内容 )
[root@test1 mysql]# mysqldump -u root -p --opt aaa > back_aaa

2)        恢复

[root@test mysql]# mysql -u root -p ccc < back_aaa

6、  修改 mysql 密码

方法 1
[root@test1 root]# mysql -u root -p
#
请输入你的 mysql 密码,默认的这空
Enter password:
#
执行如下的语句
mysql>set password for `root`@`localhost`=password("your new password");
方法 2
mysqladmin -u root -p password mypasswd
输入这个命令后,需要输入 root 的原密码,然后 root 的密码将改为 mypasswd
把命令里的 root 改为你的用户名,你就可以改你自己的密码了。
增加用户,授于权限
GRANT ALL PRIVILEGES ON *.* TO primadbadmin@localhost
      IDENTIFIED BY 'AU6788aKADG' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO monty@localhost
       IDENTIFIED BY ’something’ WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO monty@"%"
       IDENTIFIED BY ’something’ WITH GRANT OPTION;
可以用 GRANT 命令 , 格式

GRANT
权限 ON 库名 . 表名 TO 新用户名 @ 主机名 IDENTIFIED BY ‘ 密码 ‘;
常用 mysql 数据库操作命令总结

 

7、  卸载 mysql

rpm -qa|grep -i mysql

rpm -ev MySQL-server-community-5.1.46-1.rhel5

rpm -ev   MySQL-client-community-5.1.46-1.rhel5

卸载后 /var/lib/mysql 中的数据及 /etc/my.cnf 不会删除,如果确定没用后就手工删除

rm -f /etc/my.cnf

rm -rf /var/lib/mysql

rm -rf /usr/bin/mysql*

8、 <!-- [if gte mso 9]><xml> <w:WordDocument> <w:View>Normal</w:View> <w:Zoom>0</w:Zoom> <w:PunctuationKerning/> <w:DrawingGridVerticalSpacing>7.8 磅</w:DrawingGridVerticalSpacing> <w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDrawingGridEvery> <w:DisplayVerticalDrawingGridEvery>2</w:DisplayVerticalDrawingGridEvery> <w:ValidateAgainstSchemas/> <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid> <w:IgnoreMixedContent>false</w:IgnoreMixedContent> <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText> <w:Compatibility> <w:SpaceForUL/> <w:BalanceSingleByteDoubleByteWidth/> <w:DoNotLeaveBackslashAlone/> <w:ULTrailSpace/> <w:DoNotExpandShiftReturn/> <w:AdjustLineHeightInTable/> <w:BreakWrappedTables/> <w:SnapToGridInCell/> <w:WrapTextWithPunct/> <w:UseAsianBreakRules/> <w:DontGrowAutofit/> <w:UseFELayout/> </w:Compatibility> <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> </w:WordDocument> </xml><![endif]--><!-- [if gte mso 9]><xml> <w:LatentStyles DefLockedState="false" LatentStyleCount="156"> <w:LsdException Locked="false" Name="Default Paragraph Font"/> </w:LatentStyles> </xml><![endif]--><!-- [if gte mso 10]> <style> /* Style Definitions */ table.MsoNormalTable {mso-style-name:普通表格; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman"; mso-ansi-language:#0400; mso-fareast-language:#0400; mso-bidi-language:#0400;} </style> <![endif]-->

使用网上介绍的方法修改 root 用户的密码:
# mysqladmin -uroot -p password 'newpassword'
Enter password:
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: YES)'


现在终于被我找到了解决方法,如下(请先测试方法三,谢谢!):
方法一:
# /etc/init.d/mysql stop
# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
# mysql -u root mysql
mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root';
mysql> FLUSH PRIVILEGES;
mysql> quit

# /etc/init.d/mysql restart
# mysql -uroot -p
Enter password: <
输入新设的密码 newpassword>

mysql>


mysql -u xx -p -h 192.168.1.1 然后输入密码,就 OK

分享到:
评论

相关推荐

    配置MySQL与卸载MySQL实例操作

    下面的文章主要描述的是如何正确通过rpm包安装、对MySQL进行配置与卸载,以下就有详细内容对配置MySQL与卸载MySQL(和PHP搭配之最佳组合)的详细操作过程,希望会给你带来一些帮助在此方面。 以MySQL(和PHP搭配之最佳...

    mysql5.7.19安装包64位rpm格式

    使用rpm安装方式安装mysql,安装的路径如下:(系统自动配置好了,不需要手动配置) a 数据库目录 /var/lib/mysql/ b 配置文件 /usr/share/mysql(mysql.server命令及配置文件) c 相关命令 /usr/bin(mysqladmin ...

    Centos7配置MySql5.6 rpm方式

    将下载好的包上传至服务器,如果不知道怎样上传可以参考这篇博客 CentOs7 配置sftp及sftp常用命令 1.卸载centos自带的MariaDB(后面的版本因为mysql有闭源的趋势,开始预装MariaDB了) #检测系统是否安装了mariadb ...

    mysql安装与基础配置

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

    JavaEE学习日志(七十八): Linux安装jdk,安装MySQL,安装Tomcat,安装Redis,部署项目详细过程

    JavaEE学习日志(七十八)LinuxLinux安装jdkLinux安装MySQLLinux安装tomcatLinux安装RedisLinux部署商城项目Linux数据库的中文乱码问题 Linux Linux安装jdk 首先卸载Linux自带的jdk 查看当前Linux系统是否已经安装...

    mysql中rpm方式安装的详解

    查看安装以及卸载 # 查看 rpm -qa | grep mysql # 卸载 yum -y remove mysql-libs-5.1.66-2.el6_3.x86_64 1.centos7需要先卸载mariadb 查看命令rpm -qa | grep mariadb 安装包资源地址 mysql下载地址:...

    mysql-java8-tomcat8

    5\安装MySQL需要的类库包 perl \net-tools yum install perl net-tools -y 6\安装mysql的安装包 --千万要注意安装顺序 rpm -ivh mysql-community-common-5.7.20-1.el7.x86_64.rpm rpm -ivh mysql-community-...

    第2章 Linux 2 2.1. 简介 2 2.1.1. 概述 2 2.2. 环境搭建 2 2.2.1. 安装vmware 2

    2.3.1. 卸载mysql 16 2.3.2. 给CentOS添加rpm源,并且选择较新的源 16 2.3.3. 安装mysql服务器 17 2.3.4. 启动mysql 17 2.3.5. 查看mysql是否自启动,并且设置开启自启动 18 2.3.6. mysql安全设置 18 2.3.7. 修改登陆...

    Centos6.x安装mysql5.6版本

    注意: ①安装前先配置好虚拟机环境; ②mysql5.6的rpm包, ...使用rpm -qa|grep mysql和rpm -qa|grep MYSQL查看系统是否有残留的mysql安装包,若有使用命令:rpm -e -nodeps rpm软件包名 将其卸载掉; step3.使用rpm -iv

    linux总结,(常用命令,配置,mysql,php,apache,svn.....)

    常用命令,用户管理,shell,配置文件目录,rpm 安装卸载,make 安装卸载bin安装卸载,磁盘管理,setup配置,启动桌面,显示帮助,时间,文件/目录操作, 防火墙,vi/vim,vimdiff,系统目录,gcc安装,mysql,apache...

    linux下mysql 5.1 和 5.7的安装教程

    卸载系统自带的mysql 执行以下命令查看是否有自带mysql: rpm -qa | grep mysql 如果发现有输出结果,那么执行以下命令依次删除: rpm -e **** --nodeps 开始安装mysql 首先安装mysql客户端: yum install mysql 然后...

    CentOS7下mysql 8.0.16 安装配置方法图文教程

    (注:3-6步 重新安装新版本的MySQL,一定要把之前版本卸载干净,要不会出错;新的虚拟机初装MySQL,仅进行1-2步即可) 1.查看旧版本MySQL rpm -qa | grep mysql 2.逐个删除旧的组件 使用命令rpm -e –nodeps {-...

    在CentOS7上安装mysql并设置远程访问

    今天带大家来安装一下mysql,并修改一下mysql的相关配置,并且授予远程登录权限,在window上的数据库管理工具上操纵linux上的数据库。在安装前最好先保存一份快照,以防安装过程中出现问题。 1、检查,卸载系统自带...

    linux安装mysql数据库以及配置Java项目的图文详解

    一、安装mysql数据库 ①下载并解压上传到/opt/soft目录(soft目录是自己创建的)    ②解压:tar -xvf mysql-5.7.27-1.el7.x86_64.rpm-bundle.tar ... ④安装mysql社区版服务包:  rpm -ivh mysql-community-serve

    centos 7系统下编译安装 mysql5.7教程

     my配置文件路径: /usr/local/mysql/my.cnf 二、卸载mariadb # rpm -qa | grep mariadb # rpm -e --nodeps mariadb-libs-5.5.37-1.el7_0.x86_64 包名是上一条查询得知 三、创建用户组、用户  添加mysql组 ...

    CentOS7.3下mysql 8.0.13安装配置方法图文教程

    二、安装MySQL 1、卸载mariadb数据库 rpm -qa | grep mariadb yum -y remove mariadb-libs-5.5.52-1.el7.x86_64 2、安装相关依赖(本文使用CentOS 7.3镜像做本地离线yum源) yum -y install openssl-devel perl-...

    mysql 5.7.17 安装配置方法图文教程(CentOS7)

    1 CentOS7默认安装mariadb数据库,卸载mariadb。 rpm -qa|grep mariadb yum remove mariadb-libs.x86_64 2 配置YUM源 1)下载mysql源安装包 wget http://xiazai.jb51.net/201612/yuanma/mysql57YUM(jb51.net)....

    CentOS 7中源码安装MySQL 5.7.6+详细教程

    一、卸载CentOS7默认携带的mariadb包 # 检查mariadb安装包 [root@wing ~]# rpm -qa | grep -i mysql [root@wing ~]# rpm -qa | grep -i mariadb mariadb-libs-5.5.50-1.el7_2.x86_64 # 卸载mariadb安装包 [root@...

Global site tag (gtag.js) - Google Analytics