linux操作系统下的mysql服务器搭建步骤详解_百度文库_第1页
linux操作系统下的mysql服务器搭建步骤详解_百度文库_第2页
linux操作系统下的mysql服务器搭建步骤详解_百度文库_第3页
linux操作系统下的mysql服务器搭建步骤详解_百度文库_第4页
linux操作系统下的mysql服务器搭建步骤详解_百度文库_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、linux 操作系统下的 mysql 服务器搭建1、下载 MySQL 的安装文件安装 MySQL 需要下面两个文件:MySQL-server-4.0.23-0.i386.rpmMySQL-client-4.0.23-0.i386.rpm下载地址为: “ Linux x86 RPM downloads”项,找到“ Server ”和“ Client programs”项,下载需要的上 述两个 rpm 文件。2、安装 MySQLrpm 文件是 Red Hat 公司开发的软件安装包, rpm 可让 Linux 在安装软件包时免除许多复杂 的手续。该命令在安装时常用的参数是 ivh , 其中 i 表示

2、将安装指定的 rmp 软件包, V 表 示安装时的详细信息, h 表示在安装期间出现“ #”符号来显示目前的安装过程。这个符号 将持续到安装完成后才停止。1安装服务器端在有两个 rmp 文件的目录下运行如下命令:roottest1 local# rpm -ivh MySQL-server-4.0.23-0.i386.rpm显示如下信息。warning: MySQL-client-4.0.23-0.i386.rpmsignature: NOKEY, key ID 5072e1f5Preparing. # 100% 1:MySQL-server# 100% 。 。 。 。 。 。 (省略显示/us

3、r/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。roottest1 local#

4、 netstat -natActive Internet connections (servers and establishedProto Recv-Q Send-Q Local AddressForeign AddressStatetcp 00 :330:*LISTEN上面显示可以看出 MySQL 服务已经启动。2安装客户端运行如下命令:roottest1 local# rpm -ivh MySQL-client-4.0.23-0.i386.rpmwarning: MySQL-client-4.0.23-0.i386.rpm: V3 DSA signature

5、: NOKEY, key ID 5072e1f5 Preparing. # 100%1:MySQL-client# 100%显示安装完毕。用下面的命令连接 mysql, 测试是否成功。三、登录 MySQL登录 MySQL 的命令是 mysql , mysql 的使用语法如下:mysql -u username -h host -ppassword dbnameusername 与 password 分别是 MySQL 的用户名与密码, mysql 的初始管理帐号是 root , 没 有密码,注意:这个 root 用户不是 Linux 的系统用户。 MySQL 默认用户是 root ,由于 初始

6、 没有密码,第一次进时只需键入 mysql 即可。roottest1 local# mysqlWelcome to the MySQL monitor.Commands end with ; or g.Your MySQL connection id is 1 to server version: 4.0.16-standardType 'help;' or 'h' for help. Type 'c' to clear the buffer.mysql>出现了“ mysql>”提示符,恭喜你,安装成功!增加了密码后的登录格式如下:m

7、ysql -u root -pEnter password: (输入密码 其中 -u 后跟的是用户名, -p 要求输入密码,回车后在输入密码处输入密码。注意:这个 mysql 文件在 /usr/bin目录下, 与后面讲的启动文件 /etc/init.d/mysql不是一个文件。四、 MySQL 的几个重要目录MySQL 安装完成后不象 SQL Server默认安装在一个目录,它的数据库文件、配置文件和命 令文件分别在不同的目录,了解这些目录非常重要,尤其对于 Linux 的初学者,因为 Linux 本身的目录结构就比较复杂,如果搞不清楚 MySQL 的安装目录那就无从谈起深入学习。 下面就介绍

8、一下这几个目录。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

9、:给 root 加个密码 123456。键入以下命令 :roottest1 local# /usr/bin/mysqladmin -u root password 123456注:因为开始时 root 没有密码,所以 -p 旧密码一项就可以省略了。3、测试是否修改成功1不用密码登录roottest1 local# mysqlERROR 1045: Access denied for user: 'rootlocalhost' (Using password: NO显示错误,说明密码已经修改。2用修改后的密码登录roottest1 local# mysql -u root -pE

10、nter password: (输入修改后的密码 123456Welcome to the MySQL monitor.Commands end with ; or g.Your MySQL connection id is 4 to server version: 4.0.16-standardType 'help;' or 'h' for help. Type 'c' to clear the buffer.mysql>成功!这是通过 mysqladmin 命令修改口令,也可通过修改库来更改口令。六、启动与停止1、启动MySQL 安装完

11、成后启动文件 mysql 在 /etc/init.d目录下,在需要启动时运行下面命令即可。 roottest1 init.d# /etc/init.d/mysql start2、停止/usr/bin/mysqladmin -u root -p shutdown3、自动启动1察看 mysql 是否在自动启动列表中roottest1 local#sbin/chkconfig -list2把 MySQL 添加到你系统的启动服务组里面去roottest1 local#sbin/chkconfig -add mysql3把 MySQL 从启动服务组里面删除。roottest1 local#sbin/ch

12、kconfig -del mysql七、更改 MySQL 目录MySQL 默认的数据文件存储目录为 /var/lib/mysql。 假如要把目录移到 /home/data下需要进行 下面几步:/usr/lib/mysql/data1、 home 目录下建立 data 目录cd /homemkdir data2、把 MySQL 服务进程停掉:/usr/bin/mysqladmin -u root -p shutdown3、把 /var/lib/mysql整个目录移到 /home/datamv /var/lib/mysql/home/data/这样就把 MySQL 的数据文件移动到了 /home/

13、data/mysql下4、找到 f 配置文件如果 /etc/目录下没有 f 配置文件,请到 /usr/share/mysql/下找到 *.cnf文件,拷贝其中一 个到 /etc/并改名为 f 中。命令如下:roottest1 mysql# cp /usr/share/mysql/my-f/etc/f5、编辑 MySQL 的配置文件 /etc/f为 保 证 MySQL 能 够 正 常 工 作 , 需 要 指 明 mysql.sock 文 件 的 产 生 位 置 。 修 改 socket=/var/lib/mysql/mysql.sock一行中等号右边的值为:/home/mysql/mysql.s

14、ock 。操作如 下:vi f (用 vi 工具编辑 f 文件,找到下列数据修改之 # The MySQL servermysqldport = 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一行中, 等号右边的路径改成你现在的实际存

15、放路径:home/data/mysql。roottest1 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 |+-+| my

16、sql| test|+-+2 rows in set (0.04 secMysql 刚安装完有两个数据库:mysql 和 test 。 mysql 库非常重要,它里面有 MySQL 的系统 信息,我们改密码和新增用户,实际上就是用这个库中的相关表进行操作。2、显示数据库中的表mysql> use mysql; (打开库,对每个库进行操作就要打开此库,类似于 foxpro Database changedmysql> show tables;+-+| Tables_in_mysql |+-+| columns_priv| db| func| host| tables_priv| us

17、er|+-+6 rows in set (0.01 sec3、显示数据表的结构:describe 表名 ;4、显示表中的记录:select * from 表名 ;例如:显示 mysql 库中 user 表中的纪录。所有能对 MySQL 用户操作的用户都在此表中。 Select * from user;5、建库:create database 库名 ;例如:创建一个名字位 dfg 的库mysql> create databases dfg;6、建表:use 库名;create table 表名 (字段设定列表 ;例如:在刚创建的 dfg 库中建立表 name, 表中有 id(序号, 自动增

18、长 , xm (姓名 ,xb (性别 ,csny (出身年月四个字段use dfg;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_inc

19、rement | 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'可用 s

20、elect 命令来验证结果。mysql> select * from name;+-+-+-+-+| id | xm| xb| csny|+-+-+-+-+|1 | 张三 | 男 | 1971-10-01 |2 | 白云 | 女 | 1972-05-20 |+-+-+-+-+8、修改纪录例如:将张三的出生年月改为 1971-01-10mysql> update name set csny='1971-01-10' where xm='张三 '9、删除纪录例如:删除张三的纪录。mysql> delete from name where xm=&#

21、39;张三 '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"%" Id

22、entified by "123"例 1增加的用户是十分危险的,如果知道了 user_1的密码,那么他就可以在网上的任何一 台电脑上登录你的 MySQL 数据库并对你的数据为所欲为了,解决办法见例 2。例 2、 增加一个用户 user_2密码为 123, 让此用户只可以在 localhost 上登录, 并可以对数据库 dfg 进行查询、插入、修改、删除的操作(localhost 指本地主机,即 MySQL 数据库所在的 那台主机 ,这样用户即使用知道 user_2的密码,他也无法从网上直接访问数据库,只能通 过 MYSQL 主机来操作 dfg 库。mysql>gran

23、t select,insert,update,delete on dfg.* to user_2localhost identified by "123"用新增的用户如果登录不了 MySQL ,在登录时用如下命令:mysql -u user_1 -p-h 0(-h 后跟的是要登录主机的 ip 地址十、备份与恢复1、备份例如:将上例创建的 dfg 库备份到文件 back_dfg中roottest1 root# cd /home/data/mysql(进入到库目录,本例库已由 val/lib/mysql转到 /home/data/mysql,见上述第七

24、部分内容 roottest1 mysql# mysqldump -u root -p -opt dfg > back_dfg2、恢复roottest mysql# mysql -u root -p ccc < back_dfg+在 LINUX 中安装 MySQL ,可以在终端提示符后运行下列命令:sudo apt-get install mysql-serversudo apt-get install mysql-clientsudo apt-get install php5-mysql/ 安装 php5-mysql 是将 php 和 mysql 连接起来一旦安装完成, MySQL

25、 服务器应该自动启动。您可以在终端提示符后运行以下命令来检查 MySQL 服务器是否正在运行:sudo netstat -tap | grep mysql当您运行该命令时,您可以看到类似下面的行:tcp 0 0 localhost.localdomain:mysql *:* LISTEN -如果服务器不能正常运行,您可以通过下列命令启动它:sudo /etc/init.d/mysql start 启动 mysql我们可以用以下命令去查看当前 Mysql 的状态sudo service mysql status进入 mysql$mysql -uroot -p 管理员密码配置 MySQL 的管理员

26、密码:sudo mysqladmin -u root password newpassword安装 MySQL Administrator 图形界面在新立得软件下搜索 mysql 找到mysql-admin 包,选择安装后就可以,在应用程序/编程就可以运行。您也可以安装 mysql 的图形化管理工具 sudo apt-get mysql-admin mysql-query-browser+配置 mysql ,让它支持其它客户端访问,如果你不需要就不用修改。登录到 MySQL 服务器端,在 mysql 库下执行增加用户操作:格式:grant select on 数据库 .* to 用户名 登录主

27、机 identified by "密码 "GRANT ALL ON dbname.* TO test'%' IDENTIFIED BY '123456'此命令创建用户 test ,并给它赋予访问数据库 dbname 的不受限制的权限,且可以在任何机 器上访问grant all on *.* to 'remote''9' identified by 'password'如果要设置为任何客户端都可以以 root 连接的话,可以这么写:grant all on *.* to &#

28、39;root''%' identifiied by 'root的密码 'mysql>GRANT ALL PRIVILEGES ON *.* TO adminlocalhost IDENTIFIED BY 'something' WITH GRANT OPTION;mysql>GRANT ALL PRIVILEGES ON *.* TO admin"%" IDENTIFIED BY 'something' WITH GRANT OPTION;第二个或者用下面:mysql>update

29、user set host="%" where host=""类似这用方法的整理如下:1。 改表法。 可能是你的帐号不允许从远程登陆, 只能在 localhost 。 这个时候只要在 localhost 的那台电脑,登入 mysql 后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从 "localhost" 改称 "%"mysql -u root -pvmwaremysql>use mysql;my

30、sql>update user set host = '%' where user = 'root'mysql>select host, user from user;2. 授权法。例如,你想 myuser 使用 mypassword 从任何主机连接到 mysql 服务器的话。 GRANT ALL PRIVILEGES ON *.* TO 'myuser''%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;如果你想允许用户 myuser 从 ip 为 192

31、.168.1.3的主机连接到 mysql 服务器,并使用 mypassword 作为密码GRANT ALL PRIVILEGES ON *.* TO 'myuser''' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;但问题仍没有解决:找到 命令 mysql> flush privileges /使修改生效显示影响了零行。问题依然没有解决,重新启动 mysqlsudo /etc/init.d/mysql restart还是不行。了解到 mysql 有本机绑定,找到问题所在。查

32、找文件skip-networking修改为#skip-networking保存并关闭文件。编辑 /etc/mysql/fsudo gedit /etc/mysql/f# Instead of skip-networking the default is now to listen only on# localhost which is more compatible and is not less secure.bind-address = 将” bind-address = “注释sudo /etc/init.d/mysql restart或者servic

33、e mysqld restart重启即可远程访问Mysql 卸载:apt-get autoremove mysql-serverapt-get autoremove mysql-client首先试试apt-get -reinstall install mysql-server?不行时而且 mysql 关联少时,可以 apt-get remove -purge mysql-server?然后再安装,关联 多不能删时, dpkg -S /etc/init.d/mysql找到对应的包, apt-get -d -reinstall install mysql-server? 然后将对应的 deb 解开将 mysq

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论