mysql基础培训

    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

接下来是定义mysqlTCP/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表。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
nside君的MySQL网络培训班课程特点: 业界最权威的MySQL数据库培训师姜承尧老师(也就是Inside君本人啦)亲授.姜承尧老师出版了《MySQL技术内幕:InnoDB存储引擎》、《MySQL内核:InnoDB存储引擎》等Mysql书籍。 课程紧密结合互联网公司实践,学员能够领略到BAT、网易等大公司的数据库架构与应用案例 课纲结合最新的MySQL 5.6、5.7版本,使得学员学到的都是最新的内容 充分掌握课程内容的学员年薪至少在25W起,第1期的学员已经证明了培训的价值 优秀学员可以获得姜老师的BAT等大型互联网公司的内推 面试技巧与简历模板(新增),帮助学员拿到更好的offer MySQL 安装与引擎 day001-MySQL 5.7介绍和安装 day002-MySQL 5.7安装多实例 day003-MySQL升级 参数 连接 权限 day004-MySQL权限拾 遗Role模拟 Workbench 体系结构 day005-slow_log generic_log audit 存储引擎一 day006-存储引擎二 多实例安装上 day007-MySQL 多实例下 SSL MySQL 数据类型和SQL查询 开发 day008-MySQL 数据类型 day009-精通JSON类型 day010-Employees 临时表的创建 外键约束 day011-SQL语法之SELECT day012-子查询 INSERT UPDATE DELETE REPLACE day013-作业讲解一 Rank 视图 UNION 触发器上 day014-触发器下 存储过程 自定义函数 MySQL 执行计划与优化器 day015-索引 B+树 上 day016-索引 B+树 下 Explain 1 day017-Explain 2 MySQL innodb引擎优化 day018-磁盘 day019-磁盘测试 day020-InnoDB_1 表空间 General day021-InnoDB_2 SpaceID.PageNumber 压缩表) day022-InnoDB_3 透明表空间压缩 索引组织表 day023-InnoDB_4 页(2) 行记录 day024-InnoDB_5 – heap_number Buffer Poo day025-InnoDB_6 Buffer Pool与压缩页 CheckPoint LSN day026-InnoDB_7 doublewrite ChangeBuffer AHI FNP MySQL 索引与innodb锁机制 day027-Secondary Index day028-join算法锁_1 day029-锁_2 day030-锁_3 day031-锁_4 day032-锁_5 day032-锁5标清 day033-锁_6 事物_1 day033-锁_6 事物1标清 day034-事物_2 MySQL 性能衡量 day035-redo_binlog_xa day036-undo_sysbench day036-undosysbench标清 day037-tpcc_mysqlslap MySQL 备份与恢复 day038-purge死锁举例_MySQL backup备份_1 day039-MySQL backup备份恢复_2 MySQL 复制技术与高可用 day040-MySQL 备份恢复backup_3_replication_1 day041-backup_4-replication_2 day042-replication_3 day043-replication_4-GTID 1 day044-replication_5-GTID 2
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值