大雀软件园

首页 软件下载 安卓市场 苹果市场 电脑游戏 安卓游戏 文章资讯 驱动下载
技术开发 网页设计 图形图象 数据库 网络媒体 网络安全 站长CLUB 操作系统 媒体动画 安卓相关
当前位置: 首页 -> 技术开发 -> 数据库 -> 在Linux下安装和使用MySQL

在Linux下安装和使用MySQL

时间: 2021-07-31 作者:daque

一、弁言  想运用linux仍旧很长功夫了,因为没有硬性工作从来也没有体例进修,不日因为处事须要必需运用linux下的mysql。本觉得有windows下运用sql server的体味,感触在linux下安置mysql该当是轻而易举的事,可在真实安置和运用mysql时走了很多弯道,不期而遇很多题目,究竟linux和windows自己就有很大辨别。为了让和我一律的入门者在进修的进程中少走弯道,尽量初学,写了此文,蓄意对您有所扶助。正文的linux情况是red hat 9.0,mysql是4.0.16。  二、安置mysql  1、载入mysql的安置文献  安置mysql须要底下两个文献:  mysql-server-4.0.16-0.i386.rpm      mysql-client-4.0.16-0.i386.rpm  载入地方为:http://www.mysql.com/downloads/mysql-4.0.html, 翻开此网页,下拉网页找到“linux x86 rpm downloads”项,找到“server”和“client programs”项,载入须要的上述两个rpm文献。  2、安置mysql  rpm文献是red hat公司开拓的软硬件安置包,rpm可让linux在安置软硬件包时受命很多搀杂的手续。该吩咐在安置常常用的参数是 –ivh ,个中i表白将安置指定的rmp软硬件包,v表白安置时的精细消息,h表白在安置功夫展示“#”标记来表露暂时的安置进程。这个标记将连接到安置实行后才遏止。  1)安置效劳器端  在有两个rmp文献的目次下运转如次吩咐:  [root@test1 local]# rpm -ivh mysql-server-4.0.16-0.i386.rpm  表露如次消息。    warning: mysql-server-4.0.16-0.i386.rpm: v3 dsa signature: nokey, key id 5072e1f5  preparing...       ########################################### [100%]  1:mysql-server     ########################################### [100%]   。。。。。。(简略表露)  /usr/bin/mysqladmin -u root password 'new-password'  /usr/bin/mysqladmin -u root -h test1 password 'new-password'   。。。。。。(简略表露)  starting mysqld daemon with databases from /var/lib/mysql  如展示如上消息,效劳端安置结束。尝试能否胜利可运转netstat看mysql端口能否翻开,如翻开表白效劳仍旧启用,安置胜利。mysql默许的端口是3306。  [root@test1 local]# netstat -nat  active internet connections (servers and established)  proto recv-q send-q local address      foreign address     state     tcp  0  0 0.0.0.0:3306     0.0.0.0:*      listen     上头表露不妨看出mysql效劳仍旧启用。  2)安置存户端  运转如次吩咐:  [root@test1 local]# rpm -ivh mysql-client-4.0.16-0.i386.rpm  warning: mysql-client-4.0.16-0.i386.rpm: v3 dsa signature: nokey, key id 5072e1f5  preparing...    ########################################### [100%]  1:mysql-client  ########################################### [100%]  表露安置结束。  用底下的吩咐贯穿mysql,尝试能否胜利。 三、登录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不是一个文献。  四、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的目次) 五、窜改登录暗号  mysql默许没有暗号,安置结束减少暗号的要害性是显而易见的。  1、吩咐  usr/bin/mysqladmin -u root password 'new-password'  方法:mysqladmin -u用户名 -p旧暗号 password 新暗号   2、例子  例1:给root加个暗号123456。  键入以次吩咐 :  [root@test1 local]# /usr/bin/mysqladmin -u root password 123456  注:由于发端时root没有暗号,以是-p旧暗号一项就不妨简略了。   3、尝试能否窜改胜利   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吩咐窜改口令,也可经过窜改库来变动口令。  六、启用与遏止  1、启用  mysql安置实行后启用文献mysql在/etc/init.d目次下,在须要启用时运转底下吩咐即可。  [root@test1 init.d]# /etc/init.d/mysql start  2、遏止  /usr/bin/mysqladmin -u root -p shutdown  3、机动启用  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七、变动mysql目次  mysql默许的数据文献保存目次为/var/lib/mysql。假设要把目次移到/home/data下须要举行底下几步:  1、home目次下创造data目次  cd /home  mkdir data  2、把mysql效劳过程停掉:   mysqladmin -u root -p shutdown  3、把/var/lib/mysql所有目次移到/home/data  mv /var/lib/mysql /home/data/  如许就把mysql的数据文献挪动到了/home/data/mysql下   4、找到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  5、编纂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   (加上此行)  6、窜改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   (加上此行)  7、从新启用mysql效劳  /etc/rc.d/init.d/mysql start  或用reboot吩咐重启linux  即使处事平常挪动就胜利了,要不比较前方的7步再查看一下。  八、mysql的常用操纵  提防:mysql中每个吩咐后都要以分号;结果。  1、表露数据库  mysql> show databases;  +----------+  | database |  +----------+  | mysql  |  | test   |  +----------+  2 rows in set (0.04 sec)  mysql刚安置完有两个数据库:mysql和test。mysql库特殊要害,它内里有mysql的体例消息,咱们改暗号和新增用户,本质上即是用这个库中的关系表举行操纵。  2、表露数据库中的表  mysql> use mysql; (翻开库,对每个库举行操纵就要翻开此库,一致于foxpro )  database changed  mysql> show tables;  +-----------------+  | tables_in_mysql |  +-----------------+  | columns_priv  |  | db       |  | func      |  | host      |  | tables_priv   |  | user      |  +-----------------+  6 rows in set (0.01 sec)  3、表露数据表的构造:   describe 表名;   4、表露表中的记载:   select * from 表名;  比方:表露mysql库中user表中的记录。一切能对mysql用户操纵的用户都在此表中。  select * from user;  5、建库:   create database 库名;   比方:创造一个名字位aaa的库  mysql> create databases aaa;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吩咐查看刚创造的表构造。  mysql> describe name;  +-------+---------+------+-----+---------+----------------+  | field | type  | null | key | default | extra     |  +-------+---------+------+-----+---------+----------------+  | id  | int(3) |   | pri | null  | auto_increment |  | xm  | char(8) | yes |   | null  |        |  | xb  | char(2) | yes |   | null  |        |  | csny | date  | yes |   | null  |        |  +-------+---------+------+-----+---------+----------------+  7、减少记载  比方:减少几条关系记录。  mysql> insert into name values('','张三','男','1971-10-01');  mysql> insert into name values('','乌云','女','1972-05-20');  可用select吩咐来考证截止。  mysql> select * from name;  +----+------+------+------------+  | id | xm  | xb  | csny    |  +----+------+------+------------+  | 1 | 张三 | 男  | 1971-10-01 |  | 2 | 乌云 | 女  | 1972-05-20 |  +----+------+------+------------+  8、窜改记录  比方:将张三的出身岁月改为1971-01-10  mysql> update name set csny='1971-01-10' where xm='张三';  9、简略记录  比方:简略张三的记录。  mysql> delete from name where xm='张三';  10、删库和删表   drop database 库名;   drop table 表名;   九、减少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地方)  十、备份与回复  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

热门阅览

最新排行

Copyright © 2019-2021 大雀软件园(www.daque.cn) All Rights Reserved.