MySQL,是基于客户机-服务器的DBMS(C/S)
MySQL之父,Monty,1962.3.3出生于芬兰赫尔辛基,开源MySQL数据库的创始成员,MySQL AB公司的首席技术官,MySQL数据库第一行代码的作者,MySQL数据库命名人,MariaDB创始人兼首席技术官,独自完成撰写MySQL数据库服务器端95%的代码,Monty有一个女儿叫My,因此,他将自己开发的数据库命名为MySQL
MySQL下载 , MySQL的安装一般指服务端的安装 (MySQL是 C/S 架构的)
XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包,这个软件包原来的名字是 LAMPP,但是为了避免误解,最新的几个版本就改名为 XAMPP 了,它可以在Windows、Linux、Solaris、Mac OS X 等多种操作系统下安装使用
一、MySQL的有关操作
1、MySQL服务的启动与关闭
MySQL 在Windows下,安装之后(MySQL server 起名,比如起名为 mysql,可以在计算机管理服务里看到该名字),可以通过,计算机管理,服务,找到服务名称,启动或关闭服务
也可以,用管理员身份打开命令提示符,输入: net start mysql ( 服务名称 ) , 启动服务,输入: net stop mysql ( 服务名称 ) , 关闭服务
2、MySQL服务端的登录(MySQL服务启动之后才可以登录)
方式一:用MySQL自带的客户端,只限于 root 用户登录
方式二:用windows命令行的方式登录( 配置MySQL环境变量,MySQL安装bin目录 ),以管理员身份打开命令提示符,输入: mysql [ -h localhost -P 3306 ] -u root -p,其中,h 是 host,P 是 port,u 是用户名(其后,比如用户名 root),p 是密码 (root的密码默认为空),登录MySQL后,显示变量目录命令:show variables like '%dir%';
清空或修改root登录密码的方法:
第一种:
my.ini配置文件里,在[mysqld]后面任意一行添加 skip-grant-tables 用来跳过密码验证;然后重启服务;mysql -u root -p
命令然后回车,当需要输入密码时,直接按enter键,便可以不用密码登录到数据库当中;修改密码:ALTER USER 'root'@'localhost' IDENTIFIED BY '123456'; flush privileges; 退出重新登录验证密码生效;
第二种:
重置密码:use mysql; update user set authentication_string='' where user='root';
退出登录(quit)并停止服务(net stop mysql)
打开cmd正常启动mysql: net start mysql
root 登录,此时已经不需要密码
如果运行 net stop mysql (服务名)发生系统错误5,拒绝访问,解决方法:以管理员身份运行cmd
1、搜索,cortana 输入 cmd
2、找到 cmd 快捷键,右键属性,管理员身份运行
在root登录之后,使用quit退出,之前曾经修改my.ini文件,再次启动mysql服务产生错误1067,删除或备份 myq.ini,把 my-small.ini 复制并改名为 my.ini 修复
方式三:第三方图形界面客户端的方式登录
3、MySQL的退出
exit 或 ctrl + c
4、MySQL的配置
打开mysql安装目录下bin下的my.ini文件,可以修改配置
二、MariaDB数据库管理系统
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。
MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。
MariaDB 由 MySQL的创始人麦克尔·维德纽斯主导开发,他早前曾以10亿美元的价格,将自己创建的公司MySQL卖给了SUN,此后,随着SUN被甲骨文收购,MySQL的所有权也落入Oracle的手中。MariaDB名称来自麦克尔·维德纽斯的女儿玛丽亚(英语:Maria)的名字。
MariaDB直到5.5版本,均依照MySQL的版本。因此,使用MariaDB5.5的人会从MySQL5.5中了解到MariaDB的所有功能。从2012年11月12日起发布的10.0.0版开始,不再依照MySQL的版号。10.0.x版以5.5版为基础,加上移植自MySQL 5.6版的功能和自行开发的新功能。
在存储引擎方面,10.0.9版起使用XtraDB(名称代号为Aria)来代替MySQL的InnoDB。
MariaDB的API和协议兼容MySQL,另外又添加了一些功能,以支持本地的非阻塞操作和进度报告。这意味着,所有使用MySQL的连接器、程序库和应用程序也将可以在MariaDB下工作。
在此基础上,由于担心甲骨文MySQL的一个更加封闭的软件项目,Fedora (Fedora 是一套功能完备、更新快速的免费操作系统,Linux)计划在 Fedora 19 中的以MariaDB取代MySQL
三、MySQL的常见SQL命令(分号结尾,使用客户端登录服务端后使用如下命令)
1、show databases; 显示数据库列表,即查看所有的数据库
information_schema 数据库(确切说是信息数据库)是MySQL自带的,其中保存着关于MySQL服务器所维护的 所有其他数据库的信息(不可以动它),它提供了访问数据库元数据的方式;test 数据库是空的,可以删除也可以修改
2、use test; 使用数据库
3、show tables; 显示表
4、show tables from test; 显示 test 数据库的表
5、select database(); 显示在哪个库
6、create table stuinfo( -> id int, -> name varchar(20) ); 创建一个表 stuinfo ,其中的 -> 是程序换行自动给出的
7、desc stuinfo; 显示表结构
8、select * from stuinfo; 显示表数据
9、insert into stuinfo (id,name) values (1,'John'); 表中插入数据
10、update stuinfo set id = 1 where name = 'John'; 修改表数据
11、delete from stuinfo where id = 1; 删除表数据
12、select version(); 查看数据库版本,(在windows命令提示符下,输入 mysql --version 或 mysql -V 也可以查看数据库版本)
四、MySQL的常见SQL语法规范
1、不区分大小写,但建议关键字大写,表名、列名小写
2、每条命令最好用分号结尾
3、每条命令根据需要,可以进行缩进 或 换行
4、注释
单行注释:#注释文字
单行注释:-- 注释文字(注释文字前有个空格)
多行注释:/* 注释文字 */
五、图形化的MySQL客户端(海豚 SQLYog,Navicat Premium)
SQLyog是业界著名的Webyog公司出品的一款简洁高效、功能强大的图形化MySQL数据库管理工具
SQLYog安装之后,新建连接,会显示保/存的连接
点击连接之后
在询问栏输入命令(可以文件方式保存)运行后会显示结果
sql 脚本导入数据库
打开数据库中的表