NOVOTS KMS 词汇表 Glossary    联系我们 Contact Us
查询 Search  
   
按类别浏览 Browse by Category
NOVOTS KMS .: 数据库 .: Mysql 常见操作

Mysql 常见操作

 

mysql envionment variables

 件:mysql_home.bat

内容:

@echo off

@echo 系统变量[old]

path

tskill explorer

setx MYSQL_HOME D:\MYSQL5

set MYSQL_HOME=D:\MYSQL5

set Path=%MYSQL_HOME%\bin;%path%

@echo 系统变量[new]

path

cmd

MySQL startup.bat

http://rockjava.javaeye.com/blog/234585

如果你的MySql没有安装成系统服务的话,每次启动MySql还跑到服务里去启动,麻烦!呵呵。

1、安装版的MySql

启动:

StartMySQL.bat

net   start   mysql

关闭:

ShutdownMySQL.bat

net   stop   mysql

加上pause,可以查看是否启动或停止成功 

net   start   mysql

pause

net   stop   mysql

pause

记录启动日志: 

net   start   mysql> > mysql.log

2、非安装版MySql 

StartMySQL.bat

%mysql-path%\bin\mysqld   -u   root   -p   ******

其中-u代表用户名,-p代表用户密码 

直接关闭dos窗口就可以关闭MySql服务了。 

mysql install.bat

d:\mysql5\bin\mysqld -remove

d:\msyql5\bin\mysqld -install

d:\mysql5\bin\net start mysql

d:\mysql5\bin\mysql -h localhost -u root -p

mysql remove.bat

d:\mysql5\bin\net stop mysql

d:\msyql5\bin\mysqld -remove

MySQL Command

1.远程mysql  D:\>mysql -h 192.168.116.159 -P 3306 -u root -p 123 

1.进入mysql  D:\>cd /mysql5/bin D:\>cd \mysql5\bin D:>cd \m*

1.加载MySQL D:\>mysql5\bin\mysqld-nt.exe D:\>mysql5\bin\mysqld-nt --install D:>\mysql5\mysqld-nt MYSQL

1. 卸载MySQL D:\mysql5\mysqld-nt --remove

1.进入数据库 D:\mysql5\mysql -u root D:\mysql5 -u root -p -h 127.0.0.1

1.显示数据库 mysql->show databases; D: \mysql\mysqlshow -uroot;

2.创建数据库 mysql->create database db;

2. 删除数据库 mysql->drop database db; mysql->drop database if exists db;

3.选择数据库 mysql->use db

4.查看用户表 mysql->select user();  

4.创建数据表

mysql->create table mytable

(

id int(3) auto_increment not null primary key,

name char(20)not null,

address varchar(50) default '深圳',

sex char(1)not null ,

year date not null,

);

4.删除数据表 mysql>drop table mytable;

5.显示表总数 mysql>show tables;

6.显示表结构 mysql>describe mytable; mysql->desc mytable;

7. 查询表内容 mysql>select * from mytable;

8.增加数据表 mysql>insert into mytable values('','summer','深圳一中','''1983-08-24');

9.增加表字段 mysql>alter table mytable add name varchar(20)not null;

10.删除表字段 mysql>alter table mytable drop name; 

11.查看时间   mysql>select now();

12.算术计算   mysql>select 8*9;

13.mysql帮助  mysql>help 或?

14. 退出数据库mysql>quit exit q

15.开启安装版mysql服务    net start mysql

16. 关闭安装版mysql服务    net stop mysql

17.更改数据库mysql密码

D:\Program Files\mysql-5.0.27-win32 noinstall\bin\mysql -u root -p

mysql>show databases;

mysql>use mysql;

mysql>select * from user;

mysql>update user set password='root' where user='root';

17.更改数据库root密码

Mysql >set password for root@localhost=password(‘’);

18.

创建权限 select,insert,update,delete,create,drop 14

,index,alter,grant,references,reload,shutdown,process,file

 限信息userdbhosttables_privcolumns_priv表被存储在mysql数据库中(即在名为mysql的数据库中)

 限参考:http://kapoc.blogdriver.com/kapoc/1277618.html

                http://hi.baidu.com/kowstudio/blog/item/82458bafc61c0acf7dd92a5d.html

drop 如果你将mysql数据库的drop权限授予一个用户,该用户能抛弃存储了MySQL存取权限的数据库!

attention: 对用户授权的语句可以多次运行,即多次创建同一个据有不同权限的用户

example: root用户创建name="etang",pwd="etang"并授权:增删改查,禁止建表和删表@localhost

mysql>grant select,insert,update,delete on *.* to etang@localhost identified by 'etang';

annotate *.* 表示所有数据库.所有表;etang@% 表示任何地址连接

example:

root 用户创建:用户custom

从主机localhostserver.domainwhitehouse.gov连接

localhost存取bankaccount数据库

whitehouse.gov存取expenses数据库

从所有3台主机存取 customer 数据库

从所有3台主机上使用口令stupid

shell> mysql --user=root mysql

mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP

               ON bankaccount.* TO custom@localhost  IDENTIFIED BY 'stupid';

mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP

               ON expenses.*  TO custom@whitehouse.gov IDENTIFIED BY 'stupid';

mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP

               ON customer.* TO custom@'%'  IDENTIFIED BY 'stupid';

test ok:

DOS输入 mysql -u etang -p mysql -h localhost -u etang -p

Enter Password:etang

Welcome to the MySQL montitor...

其他语句:

select "hello";

select "This\nIS\nFour\nlins";

首先要说明一点的是:一般情况下,修改MySQL密码是 需要有mysql里的root权限的,这样一般用户是无法更改密码的,除非请求管理员帮助修改。

MySQL错误_中文参照列表 

1005:创建表 失败

1006:创建数据库失败

1007:数据库已存在,创建数据库失败

1008:数据库不存在,删除数据库失败

1009 不能删除数据库文件导致删除数据库失败

1010:不能删除数据目录导致删除数据库失败

1011:删除数据库文件失败

1012:不 能读取系统表中的记录

1020:记录已被其他用户修改

1021:硬盘剩余空间不足,请加大硬盘可用空间

1022:关键字重复,更 改记录失败

1023:关闭时发生错误

1024:读文件错误

1025:更改名字时发生错误

1026:写文件错误

1032 记录不存在

1036:数据表是只读的,不能对它进行修改

1037:系统内存不足,请重启数据库或重启服务器

1038:用于排序的 内存不足,请增大排序缓冲区

1040:已到达数据库的最大连接数,请加大数据库可用连接数

1041:系统内存不足

1042:无效 的主机名

1043:无效连接

1044:当前用户没有访问数据库的权限

1045:不能连接数据库,用户名或密码错误

1048 字段不能为空

1049:数据库不存在

1050:数据表已存在

1051:数据表不存在

1054:字段不存在

1065 无效的SQL语句,SQL语句为空

1081:不能建立Socket连接

1114:数据表已满,不能容纳任何记录

1116:打开的 数据表太多

1129:数据库出现异常,请重启数据库

1130:连接数据库失败,没有连接数据库的权限

1133:数据库用户不存在

1141 当前用户无权访问数据库

1142:当前用户无权访问数据表

1143:当前用户无权访问数据表中的字段

1146:数据表不存在

1147 未定义用户对数据表的访问权限

1149SQL语句语法错误

1158:网络错误,出现读错误,请检查网络连接状况

1159:网络 错误,读超时,请检查网络连接状况

1160:网络错误,出现写错误,请检查网络连接状况

1161:网络错误,写超时,请检查网络连接状况

1062 字段值重复,入库失败

1169:字段值重复,更新记录失败

1177:打开数据表失败

1180:提交事务失败

1181:回 滚事务失败

1203:当前用户和数据库建立的连接已到达数据库的最大连接数,请增大可用的数据库连接数或重启数据库

1205:加锁超时

1211 当前用户没有创建用户的权限

1216:外键约束检查失败,更新子表记录失败

1217:外键约束检查失败,删除或修改主表记录失败

1226 当前用户使用的资源已超过所允许的资源,请重启数据库或重启服务器

1227:权限不足,您无权进行此操作

1235MySQL版本过低, 不具有本功能

MySQL修改密码方法总结

http://www.javaeye.com/wiki/topic/204868

http://hi.baidu.com/ykstar/blog/item/528b6390de4ea08da977a4bd.html

方法一 

使用 phpMyAdmin (图形化管理MySql数据库的工具),这是最简单的,直接用SQL语句修改mysql数据库库的user表,不过别忘了使用PASSWORD函数,插入 用户用Insert命令,修改用户用Update命令,删除用Delete命令。在本节后面有数据表user字段的详细介绍。

方法二

使用 mysqladmin。输入

mysqladmin -u root -p oldpassword newpasswd

执行这个命令后, 需要输入root的原密码,这样root的密码将改为newpasswd。同样,把命令里的root改为你的用户名,你就可以改你自己的密码了。 当然如果你的mysqladmin连接不上mysql server,或者你没有办法执行mysqladmin,那么这种方法就是无效的,而且mysqladmin无法把密码清空。

下面的方法都在 mysql提示符下使用,且必须有mysqlroot权限:

方法三

mysql> INSERT INTO mysql.user (Host,User,Password) VALUES (\'%\',\'system\', PASSWORD(\'manager\'));

mysql> FLUSH PRIVILEGES

确切地说这是在增加一个用户,用户名为system,密码为manager。注意要使用PASSWORD 数,然后还要使用FLUSH PRIVILEGES来执行确认。

方法四

和方法三一样,只是使用了REPLACE语句

mysql> REPLACE INTO mysql.user (Host,User,Password)

VALUES(\'%\',\'system\',PASSWORD(\'manager\'));

mysql> FLUSH PRIVILEGES

方法 

使用SET PASSWORD语句

mysql> SET PASSWORD FOR system@\"%\" = PASSWORD(\'manager\');

你也必须使用PASSWORD()函数,但是不需要使用FLUSH PRIVILEGES来执行确认。

方法  

使用GRANT ... IDENTIFIED BY语句,来进行授权。

mysql> GRANT USAGE ON *.* TO system@\"%\" IDENTIFIED BY \'manager\';

这里 PASSWORD()函数是不必要的,也不需要使用FLUSH PRIVILEGES来执行确认。

 PASSWORD()函数作用是为口令字加密,在程序中MySql自动解释。

方法七 

D:\>mysql\bin>mysqladmin -u root -p 123 password 456

待测任务 

http://www.matrix.org.cn/thread.shtml?topicId=229efa5f-54b5-11dc-af81-f34262335978&forumId=38

http://www.wang48.com/jishubaodian/jishubaodianview.jsp?jsd_id=517

http://www.wang48.com/database/?nowpage=1

MYSQL 字符集问题

http://www.blogjava.net/rabbit/archive/2008/03/28/189251.html

MySQL 的字符集支持(Character Set Support)有两个方面: 字符集(Character set)和排序方式(Collation)

 于字符集的支持细化到四个层次:服务器(server),数据库(database),数据表(table)和连接(connection)

Error 1045 : Access denied for user: 'root@localhost' (Using password: YES ) 

解决 http://en.zj.cn/blog/8/8/archives/2008/3572.html

Error in my_thread_global_end(): 1 threads didnt exit 

windows 2003企业版,php5.2.2MySQL(PHP搭配之 最佳组合)  5.037wordpress中文版2.1.2

成功配置后,在主页和管理页经常出现 Error in my_thread_global_end(): 1 threads didn’t exit

解决 http://www.cncms.com.cn/mysql/4920.htm

查询发现是php5.22MySQL(PHP搭配之最佳组合)  5.037问题,需要下载php5.2.1,把libMySQL(PHP搭配之最佳组合) .dll覆盖php5.2.2libMySQL(PHP搭配之最佳组合) .dll,问题解决。

SQLidentity属性作用: 自动增长列 identity(起始值,步长)

http://blog.csdn.net/didostream/archive/2007/12/17/1944345.aspx

-- 建表,很简单,就不说了

CREATE TABLE [Photos] (

[PhotoID] [int] IDENTITY (1, 1) NOT NULL ,

[AlbumID] [int] NOT NULL ,

[Caption] [nvarchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,

)

--清空表

truncate table   dbo.Photos

GO

--打开容许对被IDENTITY修饰的列进行插入的开关,默认示关闭的,也就是不容许

set IDENTITY_INSERT dbo.Photos on

insert into Photos(PhotoID,AlbumID,Caption)values(1,1,'maql1')

insert into Photos(PhotoID,AlbumID,Caption)values(1,2,'maql2')

insert into Photos(PhotoID,AlbumID,Caption)values(1,3,'maql3')

insert into Photos(PhotoID,AlbumID,Caption)values(2,1,'zhangr1')

insert into Photos(PhotoID,AlbumID,Caption)values(2,2,'zhangr2')

insert into Photos(PhotoID,AlbumID,Caption)values(2,3,'zhangr3')

go

--关闭 IDENTITY_INSERT开关,也就是不容许对这一列进行插入,而是让其自动增长

set IDENTITY_INSERT dbo.Photos off

insert into Photos(AlbumID,Caption)values(1,'maql1')

insert into Photos(AlbumID,Caption)values(2,'maql2')

insert into Photos(AlbumID,Caption)values(3,'maql3')

insert into Photos(AlbumID,Caption)values(1,'zhangr1')

insert into Photos(AlbumID,Caption)values(2,'zhangr2')

insert into Photos(AlbumID,Caption)values(3,'zhangr3')

insert into Photos(AlbumID,Caption)values(3,'maql4')

go

在本地计算机无法启动MYSQL服务错误 1067 进程意外终止

解决 这种 情况一般是my.ini文件配置出错了

http://hi.baidu.com/dburu/blog/item/d30efcf88f56070cd9f9fd0c.html

http://hi.baidu.com/kaleluo/blog/item/a46824d888be933033fa1c83.html

文件:my.ini放入D:\mysql5即可

内容:

[mysqld]

# set basedir to installation path, e.g., d:/mysql5

# 设置为MYSQL的安装目录

basedir=D:/mysql5

# set datadir to location of data directory,

# e.g., c:/mysql/data or d:/mydata/data

# 设置为MYSQL的数据目录

datadir=D:/mysql5/data

[WinMySQLadmin]

Server=D:/mysql5/bin/mysqld-nt.exe

user=root

password=

# 以上是设置WinMySQLadmin的配置

[Server]

user=root

password=

[Client]

user=root

password=

JDKTomcatMySQL的绿色安装方法 

http://www.blogjava.net/afunms/archive/2007/10/12/152455.html

    JDKTomcatMySQL的绿色安装方法。

    要制作web系统setup一键安装程序,必须先解决JDKTomcatMySQL三者的绿色

安装问题。今天研究了半天,终于有了结果。

    现在假设我们要把这三者安装到C:\SourceView目录下。

1. JDKCopy安装好的JDKC:\Program Files\Java\jdk1.5.0_11

   C:\SourceView下就可以了。

2. TomcatCopy安装好的TomcatC:\Sourceview下。然后修改bin下的startup.bat

   在文件顶部加上

     set CATALINA_HOME=C:\SourceView\tomcat

     set JAVA_HOME=C:\SourceView\jdk1.5.0_11

3. MySQL。最麻烦的就是MySQL了。Copy安装好的MySQLC:\SourceView下。

   首先修改my.ini.

   basedir=C:/sourceview/MySQL/

   datadir=C:/sourceview/MySQL/data/     

   然后,执行

   C:\sourceview\MySQL\bin>mysqld-nt --install MySQL5.0

     --defaults-file="C:\sourceview\MySQL\my.ini"

   安装MySQL服务,服务名MySQL5.0

   C:\windows\system32\net start MySQL5.0

   启动MySQL服务。

   这样,以后只要copy SourceView到需要安装的地方,然后修改一下几点文件,这三者就能用了。

MySql Query Browser

Default Schema:mysqlsshtestinformation_schema

mysql show log tools

http://www.javaeye.com/topic/242516

mysqldumpslowmysqlsla myprofi mysql-explain-slow-logmysqllogfilter

linux mysql 性能监控和分析工具:

http://www.maycode.com/index.php/hotspot/35-linux/787-mysql.html

Maatkit

Maatkit is a great set of tools for MySQL Performance Analyses and maintainence. Must know and have for any MySQL User.

mysqladmin

mysqladmin extended -i100 -r is very nice way to look how MySQL performance counters increment and it can tell you a lot about server run status.

mysqlreport

MySQL Report is a tool which would look at status variables same as mysqladmin extended but will group them together nicely and provide some hints on what are good and bad values.

vmstat

vmstat 10 is a great tool to run and understand what system load is looking up. It is not too detailed but great for the glance view.

mysqlsla

This is nice tool to analyze slow query log. It reads bunch of different log formats and has various stats, and it was there before mk-log-parser appeared.

innotop

Innotop is great top like tool for MySQL and is helpful even if you do not use Innodb tables. Very nice to watch what happens to server in the real time.

filefrag

filefrag is the fool to check fragmentation of the file. Ever wondered how fragmented your tablespace or table on the file level ?

iostat

iostat tool is a great help investigating/troubleshooting IO problems - it will show you amount of IOs happening per device, their type, request size as well as queue size and response time.

mpstat

mpstat is a great tool to see details on CPU usage - how are different CPUs are being used, how many interrupts the handle etc. Helps to better understand and fine tune the load.

oprofile

oprofile is usually used for advanced MySQL tuning when the load is CPU bound - it will tell you where exactly inside MySQL or Kernel CPU time is spent.

iohist

iohist is a little tool to show histogram for IO response time. The main use for it is to see how response time is split for read and write request rather than seeing the average reported by iostat. These can be very different.

drtace

Dtrace is a great tool for system level performance analyses, with a catch of it being unavailable on Linux which limits it practical use dramatically.

fincore

fincore is a tool to check how well given file is cached in operation system cache. Very helpful to analyze caching of MyISAM tables for example.

sysbench

sysbench is a tool to check performance of system and MySQL. Helpful to check different hardware and OS characteristic.

MySQL分页SQLORACLE分页SQL 

http://hi.baidu.com/82826200/blog/item/a4608ace42ab630692457e9c.html

MySQL limit 分页

http://blog.163.com/xiaosanshaoli@126/blog/static/2979216320085251039537/

1. 标准查询语句:

select * from table(表名) limit startPos,pageSize

小结:

1.startPos: 定义当前页起始位置 注意:当前页的起始位置只能在当前页确定之后才能定义;

2.pageSize:定义每页显示数据的条数

3.如果给定 2个参数,第一个指定要返回的第一行的偏移量,第二个指定返回行的最大数目。初始行的偏移量是0(不是1)

如: select * from table LIMIT 5,10;           这个查询出来的是第615之间的10条数据

 如果给定一个参数,它指出返回行的最大 数目。

如: select * from table LIMIT 5;                 这个查询出来的是前5条数据

LIMIT n等价于LIMIT 0,n

MySQL删除表中大批量的数据

http://www.javayou.com/diary/146633154

 设有一个表(osc_logs)2000万条记录,我们要在业务不停止的情况下删除其中status=1的所有记录,差不多有1800万条,直接执行 DELETE FROM osc_logs WHERE status=1 会发现删除失败,因为lock wait timeout exceed的错误。因为这条语句所涉及的记录数太多了,因此我们可以分批来删除,比如每10000条进行删除,那么我们可以利用MySQL这样的语句来 完成

DELETE FROM osc_logs WHERE status=1 ORDER BY log_id LIMIT 10000;

 后分多次执行就可以把这1800万条记录成功删除。

mysql backup & comback 备份和恢复   

http://www.eliuzd.com/blog/article.asp?id=320

1。导出一个数据库

mysqldump -u用户名 -p密码 数据库名 > 导出的文件名

D:\mysql5\bin>mysqldump -u root -p root ssh > ssh.sql

2。导出数据库的一个表

mysqldump -u用户名 -p密码 数据库名 表名 > 导出的文件名

D:\mysql5\bin>mysqldump -u root -p root ssh > ssh.sql

3。导入数据到mysql5

d:\mysql5\bin>mysql -uroot -p

mysql>use ssh;

mysql>source d:\ssh.sql

Ubuntu使用cron自动备份mysql数据库 

http://bbisky.javaeye.com/blog/87519

ubuntu server上运行了一个discuz论坛,今天想起来备份一下数据库,原来一直没有备份过猛吧!!呵呵。想到干脆来个自动备份,根据论坛贴子不是太多, 一周备份一次吧。  下面是备份脚本文件 #!/bin/sh /usr/bin/mysqldump -ueceroot -p88558855 --default-character-set=utf8 --opt --extended-insert=false --triggers -R --hex-blob -x airclass_BBS | gzip > ~/mysqlbackup/airclass_BBS_$(date +%F).gz 使用了gzip压缩后保存到指定的位置,并用日期命名文件。在终端下执行了一下,没有问题。 然后把脚本放到/etc/cron.weekly目录,让他 每星期执行一次。原来也弄过一次,始终没有正确执行过,后来发现原来是脚本写得有问题,原来是在windows下用记事本写的,然后传到服务器上。用$ ./cuc-db-backup 执行了一下,发现有错,提示#!/bin/sh^M: interper…什么的错误,原来是文件格式的问题,没办法,直接在linux终端重抄了一遍文件,OK,没问题了!等着自动备份吧 :-P    顺便研究了一下ubuntucrontab文件,内容如下: # m h dom mon dow user command 17 * * * * root run-parts --report /etc/cron.hourly 25 6 * * * root test -x /usr/sbin/anacron || run-parts --report /etc/cron.daily 47 6 * * 7 root test [...]

MySQL中的各种JOIN 

MySQL JOIN(CROSS JOIN, INNER JOIN, LEFT /RIGHT[OUTER] JOIN)

http://hi.baidu.com/alex_wang58/blog/item/0e98dcf0709f66c67831aae3.html

1. 笛卡尔积(交叉连接)

MySQL中可以为CROSS JOIN或者省略CROSSJOIN,或者使用','

SELECT * FROM table1 CROSS JOIN table2

SELECT * FROM table1 JOIN table2

SELECT * FROM table1,table2

由于其返回的结果为被连接的两个数据表的乘积,因此当有WHERE

, ONUSING条件的时候一般不建议使用,因为当数据表项目太多的时候,会非常慢。

一般使用LEFT [OUTER] JOIN或者RIGHT [OUTER] JOIN

2. 内连接INNER JOIN 

MySQL中把INNER JOIN叫做等值连接,即需要指定等值连接条件

MySQLCROSSINNER JOIN被划分在一起,不明白。

参看MySQL帮助手册

http://dev.mysql.com/doc/refman/5.0/en/join.html

join_table:

    table_reference [INNER | CROSS] JOIN table_factor [join_condition]

3. MySQL中的外连接,分为左外连接和右连接, 

即除了返回符合连接条件的结果之外,还要返回左表(左连接)或者右表(右连接)中不符合连接条件的结果,相对应的使用NULL 应。

a. LEFT [OUTER] JOIN

SELECT column_name FROM table1 LEFT [OUTER] JOIN table2 ON table1.column=table2.column

除了返回符合连接条件的结果之外,还需 要显示左表中不符合连接条件的数据列,相对应使用NULL对应

b. RIGHT [OUTER] JOIN

SELECT column_name FROM table1 RIGHT [OUTER] JOIN table2 ON table1.column=table2.column

RIGHTLEFT JOIN相似不同的仅仅是除了显示符合连接条件的结果之外,还需要显示右表中不符合连接条件的数据列,相应使用NULL对应

--------------------------------------------

 加显示条件WHERE, ON, USING

1. WHERE子句

2. ON

3. USING子句,如果连接的两个表连接条件的两个列具有相同的名字的话可以使用USING

例如

SELECT <column_name> FROM <table1> LEFT JOIN <table2> USING (<column_name>)

连接多余两个表的情况

举例:

mysql> SELECT artists.Artist, cds.title, genres.genre

    -> FROM cds

    -> LEFT JOIN genres

    -> ON cds.genreID = genres.genreID

    -> LEFT JOIN artists

    -> ON cds.artistID = artists.artistID;

或者

mysql> SELECT artists.Artist, cds.title, genres.genre

    -> FROM cds

    -> LEFT JOIN genres

    -> ON cds.genreID = genres.genreID

    -> LEFT JOIN artists

    -> ON cds.artistID = artists.artistID

    -> WHERE (genres.genre = 'Pop');

--------------------------------------------

 外需要注意的地方

MySQL中涉及到多表查询的时候,需要根据查询的情况,想好使用哪种连接方式效率更高。

1. 交叉连接(笛卡尔积)或者内连接

[INNER | CROSS] JOIN

2. 左外连接LEFT [OUTER] JOIN或者右外连接RIGHT [OUTER] JOIN

注意指定连接条件WHERE, ONUSING.

--------------------------------------------

 MySQL手册定义的MySQL各种JOIN的用法 //看懂如下的定义方式 

mysqldump导出远程数据库 

http://lveyo.javaeye.com/blog/229879

为了备份虚拟主机的mysql数据库,只能用mysqldump导出到本地。 

运行:

Java代码 

  1. mysqldump --opt -h192. 168.0 . 156  -uUsername -pPassword databaseName>database.sql   

Java代码 

  1. mysqldump --opt -h192.168.0.156 -uUsername -pPassword databaseName>database.sql  

 

 

但由于数据库用户的权限不够,总显示:

Java代码 

  1. mysqldump: Got error:  1044 : Access denied  for  user  'Username' @ '%'  to database  'databaseName'  when using LOCK TABLES  

Java代码 

  1. mysqldump: Got error: 1044: Access denied for user 'Username'@'%' to database 'databaseName' when using LOCK TABLES  

 

 

 

是没有LOCK TABLES的权限,于是查看mysqldump的帮助,加上参数--skip-lock-tables

Java代码 

  1. mysqldump --opt -h192. 168.0 . 156  -uUsername -pPassword --skip-lock-tables databaseName>database.sql   

Java代码 

  1. mysqldump --opt -h192.168.0.156 -uUsername -pPassword --skip-lock-tables databaseName>database.sql  

 

 

备份成功!

 

mysql tools

http://www.javaeye.com/news/1447

1. phpMyAdmin

 

phpMyAdmin是一个PHP写的MySql管理软件,它能够创建和删除 databases,创建/删除/改变 tables,删除/编辑/增加 fields,运行SQL statement,管理keys on fields.

 

phpMyAdmin是基于web的开源软件。

官网URL: http://www.phpmyadmin.net 

 

2. HeidiSQL

HeidiSQL 有一个非常容易使用用户友好的界面,它允许你在windows桌面上管理和浏览MySql数据库。它的特点包括:生成的优秀的SQL-exports 能,两个数据库表同步功能,管理用户权限,导入Text,CSV,HTML,XML等类型文件数据,通过舒服易用的表格显示数据等等。

 

HeidiSQL 是一个优秀的桌面MySql开源管理程序。 

官网URL: http://www.heidisql.com 

Screenshots: http://www.heidisql.com/screenshots.php 

Download: http://www.heidisql.com 

 

6. SQLyog MySQL GUI - Community Edition

一个同样优秀的MySql的图形界面工具。企业版有更多功能。

官网URL: http://www.webyog.com 

 

Pasted from <http://blog.csdn.net/jamesjun/archive/2008/11/13/3290976.aspx>

 


这篇文章对你多有用?

相关文章

article CentOS系统安装MySQL教程

(No rating)  5-31-2015    Views: 956   
article Mysql 删除表名中有特殊字符的表
由于公司业务和应用的调整,之前在Mysql中的很多表...

(No rating)  7-21-2014    Views: 1119   
article mysql分表分区的优缺点
Mysql分区和分表的区别 ...

(No rating)  12-23-2020    Views: 53   

用户评语

添加评语
当前还没有评语.


.: .: .: .: .:
[ 登陆 ]
北京护航科技有限公司 2006

Novots Technologies Limited