黑夜 发表于 2011-10-24 12:41:05

菜鸟也玩mysql之学习笔记篇

作为一个运维人员,不光是要学会mysql服务的搭建和安装,也要懂得基础命令及语法的使用。
这是我学习之后总结出来的笔记,希望对和我一样的菜鸟有所帮助。
一、登录mysql数据库
1、连接本地mysql数据库,默认端口为3306。
      #mysql –u root –p 123456      //-u:指定用户   -p:指定与用户对应的密码。
2、通过IP和端口连接远程mysql服务器。
      #mysql –u root –p 123456 –h 192.168.100.1 –P 3306       //-h:指定数据库服务器IP   -P:指定要连接的端口号。
3、通过TCP连接管理不同端口的多个MySQL(注意:MySQL4.1以上版本才有此项功能)
      #mysql -u root –p 123456 --protocol=tcp --host=localhost --port=3307
4、通过socket套接字管理不同端口的多个MySQL   
      #mysql -u root -p --socket=/tmp/mysql3307.sock
5、退出mysql.
      >exit;
二、数据库操作语句
1、显示所有数据库。
      >show databases;
2、创建一个test1234数据库。
      >create database test1234;
3、选定test1234数据库。
      >use test1234;
4、删除test1234数据库。
      >drop database test1234;
三、表操作语句
1、显示当前库中的所有表。
      >show tables;
2、在当前库中创建一个user表,字段id为主键、唯一索引,存储引擎为MYISAM。
      >create table user (id int(5) unsigned,name char(10) not null, pass char(20) not null,primary key (id)) engine = myisam;
3、查看user表结构。
      >describe user;
4、 查询user表中的记录。
       >select * from user;
5、在user表中指定条件查询。
      >select * from user where name = 'zhangsan' ;
6、查询user表,并按id排序。
      >select * from user order by id desc;
7、在user表中指定字段name、pass查询。
      >select name,pass from user;
8、在user表中查询唯一不重复的记录。
      >select distinct name from user;
9、向user表中插入记录。
      >insert into user (id,name,pass) values (1,'zhangsan','123456');
10、更新user表中的指定信息。
      >update user set pass='123456' where name='zhangsan';
11、给user表的pass字段后增加date字段。
      >alter table user add column date char(8) after pass;
12、在user表中修改pass字段名及字段数据类型。
      >alter table user change column pass password char(10);
13、在user表中删除date字段。
      >alter table user drop column date;
14、删除user表中指定的信息。
      >delete from user where id=1;
15、删除user表中所有的信息。
      >delete from user;
16、删除user表。
      >drop table user;
四、数据库权限操作
1、创建一个具有root权限,可从任意IP登录的账号test123。
      >grant all privileges on *.* to 'test123'@'%' identified by '123456';
2、创建一个针对mysqltest库具有数据操作权限的账号test1234,并且只能从192.168.1.10登录。
      >grant select,insert,update,delete on mysqltest to 'test1234'@'192.168.1.10' identified by '123456';
3、收回test1234账号针对mysqltest库的某些数据操作权限。
      >revoke insert,update,delete on mysqltest from 'test1234'@'192.168.1.10' identified by '123456';
4、删除test1234用户。
      >drop user 'test1234'@'%';
五、mysqld的备份还原
1、备份mysqltest数据库。
      #mysqldump –u root –p 123456 mysqltest > bak_mysqltest.sql
2、备份mysqltest数据库下user表的数据。
      #mysqldump –u root –p 123456 mysqltest user > bak_table_mysqltest_user.sql
3、备份mysqltest数据库,并压缩。
      #mysqldump –u root –p 123456 mysqltest | gzip > bak_mysqltest.sql.gz
4、恢复mysqltest.sql到mysqltest库中。
      #mysql –u root –p 123456 mysqltest < bak_mysqltest.sql    如果数据库中没有mysqltest这个库,必须先建立此库。再执行导入操作。
5、恢复user表中的数据。
      #mysql –u root –p 123456 mysqltest < bak_table_mysqltest_user.sql
6、从压缩文件bak_mysqltest.sql.gz中导数据数据到mysqltest库中。
      #gzip < bak_mysqltest.sql.gz | mysql –u root –p 123456 mysqltest
六、mysql其它命令
1、启动mysql服务。
      #service mysqld start   源码包安装不适用
      #/etc/init.d/mysqld start   源码包安装不适用
      #/usr/local/mysql/bin/mysqld_safe –user=mysql &
2、关闭mysql服务。
      #service mysqld stop   源码包安装不适用
      #/etc/init.d/mysqld stop    源码包安装不适用
      #/usr/local/mysql/bin/mysqladmin –p 123456 shutdown      这里的-p指的是mysql管理员账号的密码。
3、重启mysql服务。
      #service mysqld restart    源码包安装不适用
      #/etc/init.d/mysqld restart    源码包安装不适用
4、将源码包安装的mysql加入到开机自启动。
      #echo "/usr/local/mysql/bin/mysqld_safe --user=mysql &" >>/etc/rc.local
5、将源码包安装的mysql加入环境变量中。
      #echo "export PATH=$PATH:/usr/local/mysql/bin" >>/etc/profile   加入环境变量
      #source /etc/profile       更新环境变量
本文出自 “小崔的成长之路” 博客,请务必保留此出处http://cyr520.blog.51cto.com/714067/690043

cicigood123 发表于 2011-11-11 09:57:02

听说是非洲来的哦总结还可以很适合新手哦
页: [1]
查看完整版本: 菜鸟也玩mysql之学习笔记篇