大家好,欢迎来到IT知识分享网。
mysql是一种开源的,免费的(商业应用要经过相应的授权,可享受相应服务)的数据库系统,与Oracle与SQLServer相比,mySQL在性能与功能上并不逊色多少,特别是mysql5,一些企业级的应用如存储过程,子查询,触发器等都已具备。而且目前国际与国内的很多大型应用均都采用了mysql作为其商业应用数据库,如国外的Yahoo(全球访问量第一),国内的17173(全球访问量最大的游戏资讯网)还有综合门户网站Tom.com等等。
1 安装
要安装mysql,请根据你的操作系统的类型,到www.mysql.com上选用适合于你要安装的操作系统版本的mysql,mysql目前有多种版本,老的版本是3.23.X系列,新的版本有4.0.X,4.1.X还有5.x等。目前我们在选用时,一般选用4.0.x,也可以选用更高的版本,更高的版本在功能上有所增强,在对字符集的支持方面也更多,正因为如此,如果你如支持字符集的设置不是很熟悉的话,你还是选用4.0.X系列,否则可能会没有正常配置而导致mysql数据库中中文字符的乱码。
1.1 基于RedHat AS 4下的安装
有两种方式:一种是RPM包的安装,这种相对简单,运行一下命令即可,另一种是编译源程序式的安装,以下分别介绍。
1.1.1 基于RPM包的安装
安装服务端软件
rpm -ivh MySQL-server-standard-4.1.12-0.rhel4.i386.rpm
安装完后,再安装客户端软件
rpm -ivh MySQL-client-standard-4.1.12-0.rhel4.i386.rpm
1.1.2 程序编译式的安装
如果RPM包安装不成功,也可以试试编译式的安装,方法是从www.mysql.com上下载mysql的源程序包,一般是.tar.gz的包(mysql-4.1.12.tar.gz)。
(1)将mysql-4.1.12.tar.gz传到RedHat 服务器上。
(2)将mysql-4.1.12.tar.gz解压,并放在当前目录 tar –xzf mysql-4.1.12.tar.gz
(3)按顺序输入以下命令
cd mysql-4.1.12
./configure -prefix=/usr/local/mysql — with-charset= gbk –with-extra-charsets=all
make
make install
以上命令是实现将mysql安装到/usr/local/mysql目录,并让mysql采用gbk的字符集,支持所有字符
groupadd mysql(创建mysql组)
useradd –g mysql mysql (创建mysql用户,并归入mysql组)
chown mysql:mysql /usr/local/mysql
(将/usr/local/mysql这个目录所有权归给mysql组的mysql用户)
cp support-files/my-medium.cnf /etc/my.cnf(创建mysql配置文件)
cp support-files/mysql.server /etc/init.d/mysql(创建mysql的启动文件)
cd /etc/rc.d/rc3.d
ln –s ../init.d/mysql S888MYSQL(创建mysql的自启动服务文件,如系统已有,可不创建,888为随意的数字,用户可以随便填写,但建议填写大一点)
ln –s ../init.d/mysql K888MYSQL(创建mysql的自关闭服务文件,如系统已有,可不创建,888为随意的数字,用户可以随便填写,但建议填写大一点)
(4)配置mysql支持GBK中文字符串
vi /etc/my.cnf
系统进入编译my.cnf的界面,按i键可以进行修改编译,请在[client],[mysqld],[mysqldump],[mysql]下各加一行default-character-set=gbk。共是加了4行。编译完后按ESC键退出编译状态,然后按分号:然后输入wq!回车以保存退出。
(5)mysql启动与初始化
cd /usr/local/mysql/bin
./mysql_install_db –user=mysql
./mysql_safe –user=mysql &
至此,mysql安装完毕,操作系统启动时,mysql也会跟着启动起来。
1.2 基于windows下的安装
从官方网站下载mysql-essential-4.1.12a-win32.msi或mysql-4.0.25-win32.zip。如果下载的是4.0.25,则安装相对简单,一直按提示即可完成,安装完后,在安装目录(以c:/mysql为例)的bin目录下找到winmysqladmin.exe,双击该文件,系统弹出界面如下图:
输入相应的用户名与密码按OK即可(用户名与密码由用户自己决定)。
如果你要安装的是mysql4.1.12,则系统会有一个配置过程,如下所示:
按Next按钮
选择Custom自定义安装,按Next按钮
点击“Change”将安装目录修改,您可以改为你喜欢的安装目录,但建议安装目录的名称中最好不要含有空格,例如你最好不要装在Program Files目录(含有空格),可以安装在如C:/mysql41目录或C:/mysql目录。按Next按钮。
按Install按钮,系统进行安装mysql
安装完后,系统提示是否要注册到
mysql.com
,选择跳过登陆注册(
Skip Sign-up
),按
Next
。
接下来,系统会提示是否进行mysql的配置,默认打勾进入配置。
默认选择详细配置,按Next
接下来系统提示选择服务器类型,一般如果在自己的工作机上装的话,可以选择第一个(Developer Machine),这样mysql不会占用大量内存。如果安装到服务器上,且上面还运行着其它系统,建议选择第2个,如果该服务器是mysql专用,没有装其他任何系统,则可以选择第三种类型以充分利用服务器的内存。
接下来系统提示mysql数据库安装的用途,不同的用途会导致系统采用不同的存储引擎,而不同的存储引擎会影响系统功能的使用与性能的发挥。一般默认选第一种即多功能服务器(有事务与有无事务)。
接下来是提示mysql表空间及相关数据文件存放的目录,一般是默认。当然你也可以更改。
接下来是定义系统的最大并发连接数,你可以手动定义,选择Manual Setting,输入你要定义的连接数如200,按Next
接下来是定义mysql的TCP/IP连接端口,系统默认是3306端口,一般也不修改
然后是决定mysql使用的默认字符集,一般选择手动定义,然后选择GBK字符集(若国际化用途,可选utf8)
接着系统提示要将mysql装为windows的服务,默认,并在“Include Bin Directory Windows PATH”前面的复选框打勾,表示将mysql命令加入windows 的PATH路径。
最后,安装提示你输入mysql管理员root的密码,问是否要让root可以远程连接,如果你希望你在其他机器可以联到这台服务器的mysql,那么请在“Enable root access from remote machines”前面的复选框打勾。(如果网络的防火墙没有做安全的设置如防止外面的访问本服务器的3306端口等,那么建议不要打勾允许远程连接以提高系统安全系数)。
最后你只段按Execute即可,系统将按你刚才的配置进行配置系统.
2 mysql的基本操作
mysql的基本操作你可以借助客户端工具完成如navicat2005,也可以借助mysql.com官方提供的客户端管理工具mysql-administrator。以下以命令行方式说明一下mysql的基本操作
(1)进入mysql命令行
进入linux或windows的命令行状态
mysql –u root –p
接下来系统提示你输入密码, linux下第一次安装时,root的密码是空的,在windows 下安装4.1.X以上版本时,在配置时就有配置root的密码,输入那时配置的密码。
如果你的mysql是4.1.X以上版本,建议用mysql –-default-character-set=gbk –u root –p方式进入命令行,此时进入系统后将是支持gbk字符集的方式进行操作。
(2)基本命令表(这些都是进入mysql命令行后进行的操作,命令要以分号;结尾)
命令 |
说明 |
create database 库名; |
创建数据库 |
drop database; |
删除数据库 |
show databases; |
查看目前所有的数据库列表 |
use 库名 |
进入某个数据库(进入后才可以进行建表等对表的操作) |
drop table 表名 |
删除表 |
create table 表名(列名 列类型,…); |
创建表 |
show tables; |
查看当前库下有哪些数据表 |
(3)mysql服务的停止与重启
在windows上,mysql一般安装为windows 服务,那么可以在管理工具——服务里找到mysql,然后就可以停止或重启mysql服务,也可以在命令行下打入net stop mysql停止mysql,net start mysql以启动mysql。
在linux下,可打入
/etc/init.d/mysql stop 停止mysql
/etc/init.d/mysql start 启动mysql
/etc/init.d/mysql restart 重新启动mysql
(4)mysql的帐户管理
Mysql的所有帐户信息是存放在一个名为mysql的数据库中,用户帐号信息存在这个库的user表中,要增加与删除用户实际上就是运用sql语句进行操作,当然你可以借助navicat或mysql-administrator进行操作。
删除mysql的一个用户
mysql> DELETE FROM mysql.user WHERE User=’user_name’ and Host=’host_name’;
mysql> FLUSH PRIVILEGES;(刷新权限)
要修改root用户的密码可以
mysql> UPDATE mysql.user SET Password=PASSWORD(‘newpass’) WHERE User=’root’ AND Host=’localhost’;
mysql> FLUSH PRIVILEGES;
创建test用户,密码为goodscret并授于对cms库的全部权限
GRANT ALL PRIVILEGES ON cms.* TO ‘test’@’localhost’ IDENTIFIED BY ‘goodsecret’
有关grant的相关用法可以参照mysql手册的14.5.1.2章。
3 mysql备份
(1)mysqldump方式(热备)
在linux或windows的命令行下运行mysqldump命令
mysql4.1.x版本:
mysqldump –default-character-set=gbk 库名>导出的文件路径及名称 –u 用户名 -p
mysql4.0.x版本:
mysqldump 库名>导出的文件路径及名称 –u 用户名 -p
例要将一个名为rjcms的表导出来并将导出的文件放在/root目录
mysqldump rjcms>rjcms050714.sql –u root –p
系统会将导出的数据存为一个文本格式的纯sql语句的文本文件。
(2)目录复制方式(冷备)
可以直接将mysql的数据文件直接copy下来,这种方式不是很推荐,一般要进行时,最好将myql的服务停止再进行复制,这种复制方式当mysql版本变化时,有可能无法保证数据可用性。在windows 系统下,数据文件一般在mysql安装目录的data目录,这个目录下是按数据库名称为目录名称存放的,选择好要备份的数据库,直接复制目录即可;在linux下,一般是在/usr/local/mysql/var目录或是/var/mysql目录。
(3)select * from 表名 into outfile “数据文件名”
这种方式可以按表,导出表中的数据并以文本格式存放,记录按行存放,列之间以tab键分隔。
4 mysql数据恢复或导入
(1) mysql命令导入
mysql命令可以导入mysqldump导出的数据,可以导入sql形式存放的文本文件,方法是:
在linux或windows的命令行下运行mysql命令
mysql4.1.x版本:
mysql –default-character-set=gbk 库名<导出的文件路径及名称 –u 用户名 -p
mysql4.0.x版本:
mysql 库名<导出的文件路径及名称 –u 用户名 -p
例要将一个名为/root/rjcms050714.sql 的数据文件导入rjcms库
mysql rjcms</root/rjcms050714.sql –u root –p
(2) 目录复制
与3部分的(2)对应,可以将复制出来的目录直接放入mysql的数据目录,放入之前最好停止mysql服务。
(3)load data infile “数据文件名” into 表名
与3部分的(3)对应,可以将select 导出的数据导入相应的表中。load data命令是在mysql命令行下执行的。
还有一种在linux或windows命令行下的执行方法,例
mysqlimport cms cms_catalog.txt -u root –p
mysqlimport 可以将一个cms_catalog.txt(注意文件名必须与要导入的表名一样),导入cms库中的cms_catalog表。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/25145.html