一、MySQL安装
到MySQL上sql/downloads/mysql/,下载mysql可安装dmg版本
比如:Mac OS X ver. 10.9 (x86, 64-bit), DMG Archive
下载完的文件为:mysql-5.6.24-osx10.9-x86_64.dmg
点击安装包一步步傻瓜式安装就行。
系统偏好设置的其他里,点击“mysql”的图标
点击Start MySQL Server按钮,启动mysql
二、打开终端,定义MySQL别名
输入alias 命令
alias mysql=/usr/local/mysql/bin/mysql
回车,在输入
alias mysqladmin=/usr/local/mysql/bin/mysqladmin
三、设置mysql root账号的密码
mysqladmin -u root password ***(#初始密码)
// 如果设置完成后,需要修改,执行命令
mysqladmin -u root -p password new***(#最新密码)
接着会提示输入密码,此时输入旧密码,回车
四、连接数据库
mysql -u root -p
然后提示输入密码,输入三中设置的密码
如果是登录远程主机上的mysql数据库
mysql -h 主机地址-u 用户名-p 用户密码
五、执行常用的mysql数据库操作
注意:以下操作都是在连接数据库之后,进入mysql环境,之后执行的命令都必需带有分号“;”
1.新增用户授权
格式如下:grant 操作权限on 数据库.* to test1@"%" identified by "abc";
意思是:授予,某主机上的某用户(附带该用户的登录密码)在某数据库上,执行某些操作的权限
(1)比如:任意主机上(“%”),用户(用户名:test1,密码:adc)在所有数据库上,执行任意操作的权限(危险哦)
grant all privileges on *.* to test1@"%" identified by “abc”;
其中all privileges 表示查询、插入、修改、删除的权限:select、insert、update、delete
以上命令等价于:
grant select,insert,update,delete on *.* to test1@"%" identified by "abc";
然后刷新权限
flush privileges;
(2)比如:授权本地主机上的用户操作数据库的权限
创建数据库(比如:openfire)
create database openfire;
授予本地主机用户(用户名:test1,密码:test1)访问数据库(数据库名称:openfire)的操作权限
grant all privileges on openfire.* test1@localhost identified by "test1"; flush privileges;
现在,就可以用新的用户,访问openfire数据库了。
2.更新指定账户的密码(用户名:test1,新密码:1234)
update mysql.user set password=password('1234') where User="test1" and Host="localhost";
3.删除用户
先使用mysql数据库
use mysql;
删除mysql数据库中user表中的某个本地用户(test7)
delete from user where User="test7" and Host=“localhost”;
4.显示命令
(1)显示所有数据库列表
show databases;
初始化只有两个数据库,mysql 和test
注意:Mysql的系统信息都存储在mysql库中,比如:修改密码和新增用户,实际就是在这个库进行
(2)打开某个数据库(比如数据库:openfire);
use openfire;
(3)显示本库中的所有表
show tables;
(4)显示某表的结构
describe table1;
(5)建库
create database 库名;
(6)建表
use 库名;
create table 表名(字段设定列表);
(7)删库
drop database 库名;
(8)删表
drop table 表名;
(9)将表中的记录清空
delete from 表名;
(10)显示表中的记录
select * from 表名;
六、退出mysql
exit
七、启动和停止mysql
启动
/usr/local/mysql/share/mysql.server start
停止
/
usr/local/mysql/bin/mysqladmin -u root -p shutdown
输入root密码
附:
一、MySQL处理数据库和表的常用命令
处理数据库
查看数据库
获取服务器上的数据库列表通常很有用。执行show databases;命令就可以搞定。
mysql> show databases;
创建数据库
mysql> create database db_test;
Query OK, 1 row affected (0.00 sec)
使用数据库
数据库一旦创建,就可以通过“使用”(use命令)数据库,将其指定为默认的工作数据库。
mysql> use db_test;
Database changed
删除数据库
删除数据库的方式与创建的方式很相似。可以在mysql客户端中使用drop 命令删除数据库,如下:
mysql> drop database db_test;
Query OK, 0 rows affected (0.00 sec)
处理表
这里将对如何创建、列出、查看、删除和修改MySQL数据库表。
创建表
表通过create table语句来创建。创建表的过程中会使用非常多的选项和子句,在这里完全总结一遍也是不现实的,这里只是总结最普遍的,以后遇到别的,再单个总结。创建表的一般用法如下:
mysql> create table tb_test(
-> id int unsigned not null auto_increment,
-> firstname varchar(25) not null,
-> lastname varchar(25) not null,
-> email varchar(45) not null,
-> phone varchar(10) not null,
-> primary key(id));
Query OK, 0 rows affected (0.03 sec)
记住,表至少包含一列。另外,创建表之后总是可以再回过头来修改表的结构。无论当前是否在使用目标数据库,都可以创建表,只要在表名前面加上目标数据库即可。例如:
mysql> create table db_test.tb_test(
-> id int unsigned not null auto_increment,
-> firstname varchar(25) not null,
-> lastname varchar(25) not null,
-> email varchar(45) not null,
-> phone varchar(10) not null,
-> primary key(id));
Query OK, 0 rows affected (0.03 sec)
有条件的创建表
在默认情况下,如果试图创建一个已经存在的表,MySQL会产生一个错误。为了避免这个错误,create table语句提供了一个子句,如果你希望在目标表已经存在的情况下简单地退出表创建,就可以使用这个子句。例如:mysql> create table if not exists db_test.tb_test(
mysql下载后的初次使用
-> id int unsigned not null auto_increment,
-> firstname varchar(25) not null,
-> lastname varchar(25) not null,
-> email varchar(45) not null,
-> phone varchar(10) not null,
-> primary key(id));
Query OK, 0 rows affected, 1 warning (0.00 sec)
无论是否已经创建,都会在返回到命令提示窗口时显示“Query OK”消息。复制表
基于现有的表创建新表是一项很容易的任务。以下代码将得到tb_test表的一个副本,名为tb_test2:
mysql> create table tb_test2 select * from db_test.tb_test;
Query OK, 0 rows affected (0.03 sec)
Records: 0 Duplicates: 0 Warnings: 0
将向数据库增加一个相同的表tb_test2。而有的时候,可能希望只基于现有表的几个列创建一个表。通过create select语句中指定列就可以实现:mysql> describe tb_test;
+-----------+------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------+------------------+------+-----+---------+----------------+
| id | int(10) unsigned | NO | PRI | NULL | auto_increment | | firstname | varchar(25) | NO | | NULL | | | lastname | varchar(25) | NO | | NULL | | | email | varchar(45) | NO | | NULL | | | phone | varchar(10) | NO | | NULL | | +-----------+------------------+------+-----+---------+----------------+
5 rows in set (0.01 sec)
mysql> create table tb_test2 select id, firstname, lastname, email from tb_test;
Query OK, 0 rows affected (0.03 sec)
Records: 0 Duplicates: 0 Warnings: 0
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论