牵着老婆满街逛

严以律己,宽以待人. 三思而后行.
GMail/GTalk: yanglinbo#google.com;
MSN/Email: tx7do#yahoo.com.cn;
QQ: 3 0 3 3 9 6 9 2 0 .

MySQL简单使用

转载自:https://www-900.ibm.com/cn/support/viewdoc/detail?DocId=2011073000000

MySQL简单使用

MySQL简单使用
MySQL最初广泛地使用在Linux系统,随着MySQL的普及,在一些主流的UNIX系统中,如AIX,Solaris,也逐渐的多了起来,这篇文章将介绍如何在AIX平台上使用MySQL数据库。在以下的内容中将按照数据库初始化、数据库管理、操作三个方面介绍。
在介绍以下内容之前,应当先清楚的知道MySQL分布,这里说的分布是指缺省情况下的安装配置,其系统文件、数据文件、头文件及提供的库文件分布如下:
系统文件: /usr/local/bin
头文件: /usr/local/include/mysql
库文件: /usr/local/lib/mysql
数据库文件:/var/mysql,按创建的数据库名称安树状结构分布

数据库初始化
通常情况下,MySQL初次安张结束后,如果直接运行mysql连结MySQL数据库服务器,会出
现这样的错误,Can't start server: Bind on TCP/IP port: Address already in use或者Can't start server : Bind on unix socket
直观的来看象是端口被占用的问题,实际上是MySQL未初始化引起的。对MySQL的初始化可通过运行mysql_install_db来实现,其输出结果如下:
[root@ibmp630/usr/local/bin#]./mysql_install_db
Preparing db table
Preparing host table
Preparing user table
Preparing func table
Preparing tables_priv table
Preparing columns_priv table
Installing all prepared tables

To start mysqld at boot time you have to copy support-files/mysql.server
to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
This is done with:
/usr/local/bin/mysqladmin -u root -p password 'new-password'
/usr/local/bin/mysqladmin -u root -h ibmp630 -p password 'new-password'
See the manual for more instructions.

You can start the MySQL daemon with:
cd /usr/local ; /usr/local/bin/safe_mysqld &
You can test the MySQL daemon with the benchmarks in the 'sql-bench' directory:
cd sql-bench ; run-all-tests

Please report any problems with the /usr/local/bin/mysqlbug script!

The latest information about MySQL is available on the web at
http://www.mysql.com
Support MySQL by buying support/licenses at https://order.mysql.com

从上面的输出信息可以看出,mysql_install_db实际上是创建MySQL的权限信息,mysql_install_db并不覆盖已经存在的权限信息表,一般情况下,mysql_install_db只是在MySQL安装完成后运行一次既可。

启动停止数据库
数据库的启动和停止是最基本的操作,可以通过mysql.server和safe_mysqld启动和停止MySQL。具体的操作方式为:
1) 利用mysql.server,位置/usr/local/share/mysql
启动数据库服务器:
mysql.server start
停止数据库服务器:
mysql.server stop
实际上,mysql.server启动服务器是通过safe_mysqld实现的。
2) safe_mysqld
safe_mysqld启动服务器,不需要带任何参数,如下:
safe_mysqld &
停止数据库,可以利用mysqladmin实现,如下:
mysqladmin shutdown

数据库管理
对一些商业性的数据库管理系统,数据库的管理是一个复杂的问题,如用户管理、数据管理、表管理、系统优化等等,MySQL数据库系统也存在同样的问题。这里只介绍mysqladmin和mysql两个基本的工具,更详细的操作请参考MySQL操作手册。
mysqladmin是最基本、常用的工具,如创建、删除数据库,修改用户密码,查看数据库状态等,mysqladmin常用的命令参数为:
create databasename --:创建数据库
drop databasename ----:删除数据库及其所有相关的表
extended-status ------:获取MySQL服务器的详细状态
kill id,id,... -------:杀掉MySQL的线程
password new-password :修改用户密码
ping -----------------:查看MySQL后台进程是否存在
processlist ----------:显示当前的服务器的线程
shutdown -------------:停止数据库服务器
status ---------------:获取MySQL服务器状态
version --------------:查看MySQL服务器版本信息

举几个简单的例子,如下:
1)修改MySQL用户root的密码为test,操作命令为:
[root@ibmp630/usr/local/bin#]mysqladmin -u root -p password 'test'
Enter password: <=== 输入旧的用户密码
2) 查看服务器的运行状态
命令为:mysqladmin processlist status,例如:
[root@ibmp630/usr/local/share/mysql#]mysqladmin -h ibmp630 proc stat
+----+------+------+----+---------+------+-------+--------+
| Id | User | Host | db | Command | Time | State | Info |
+----+------+---------+----+---------+------+-------+-----+
| 2 | root | ibmp630 | | Query | 0 | | show processlist |
+----+------+---------+----+---------+------+-------+-----+
Uptime: 39 Threads: 1 Questions: 2 Slow queries: 0 Opens: 6 Flush tables: 1
Open tables: 0 Queries per second avg: 0.051

要介绍的第二个工具为msql,这是MySQL客户端连结到服务器端的一个重要工具,通过它,我们可以得到一些更详细的数据库信息,完成对数据库的操作,使用方法为:
mysql –u user –p password
正确连结到服务器系统将显示如下提示符:
mysql>

简单介绍在mysql工具中常用几条命令,另外SQL语句的操作也是在mysql下完成的,对于SQL的操作,不再在此详细描述,请参考相关的手册。
1)查看MySQL数据库
show databases; 例如:
mysql> show databases;
+----------+
| Database |
+----------+
| mysql |
| test |
| testdb |
+----------+
3 rows in set (0.00 sec)

2)查看当前的数据库
select database(); 例如:
mysql> select database();
+------------+
| database() |
+------------+
| testdb |
+------------+
1 row in set (0.06 sec)

3) 打开并使用数据库
use database_name; 例如:
mysql> use testdb;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed

4) 查看表信息
show tables;
mysql> show tables;
+------------------+
| Tables_in_testdb |
+------------------+
| testtb |
+------------------+
1 row in set (0.00 sec)

5) 查看表的结构信息
desc table_name
mysql> desc db;
+---------------+---------------+----+---+-------+-----+
| Field --------| Type ---------|Null|Key|Default|Extra|
+---------------+---------------+----+---+-------+-----+
|Host ----------|char(60) binary| ---|PRI| ------| ----|
|Db ------------|char(64) binary| ---|PRI| ------| ----|
|User ----------|char(16) binary| ---|PRI| ------|---- |
|Select_priv ---|enum('N','Y') -| ---| --| N ----| ----|
|Insert_priv----|enum('N','Y') -| ---| --| N ----|---- |
|Update_priv ---|enum('N','Y') -| ---| --| N ----| ----|
|Delete_priv ---|enum('N','Y') -| ---| --| N ----|---- |
|Create_priv ---|enum('N','Y') -| ---| --| N ----|---- |
|Drop_priv -----|enum('N','Y') -| ---| --| N ----| ----|
|Grant_priv ----|enum('N','Y') -| ---|-- | N ----| ----|
|References_priv|enum('N','Y') -| ---|-- | N ----| ----|
|Index_priv ----|enum('N','Y') -| ---| --| N ----|---- |
|Alter_priv ----|enum('N','Y') -| ---| --| N ----| ----|
+---------------+---------------+----+---+-------+-----+
13 rows in set (0.00 sec)

以上给出的知识MySQL的一些基本知识,这篇文章的目的是希望读者看完后能基本操作
MySQL数据库,更完整的信息请参考MySQL的使用手册。

MySQL简单使用
MySQL最初广泛地使用在Linux系统,随着MySQL的普及,在一些主流的UNIX系统中,如AIX,Solaris,也逐渐的多了起来,这篇文章将介绍如何在AIX平台上使用MySQL数据库。在以下的内容中将按照数据库初始化、数据库管理、操作三个方面介绍。
在介绍以下内容之前,应当先清楚的知道MySQL分布,这里说的分布是指缺省情况下的安装配置,其系统文件、数据文件、头文件及提供的库文件分布如下:
系统文件: /usr/local/bin
头文件: /usr/local/include/mysql
库文件: /usr/local/lib/mysql
数据库文件:/var/mysql,按创建的数据库名称安树状结构分布

数据库初始化
通常情况下,MySQL初次安张结束后,如果直接运行mysql连结MySQL数据库服务器,会出
现这样的错误,Can't start server: Bind on TCP/IP port: Address already in use或者Can't start server : Bind on unix socket
直观的来看象是端口被占用的问题,实际上是MySQL未初始化引起的。对MySQL的初始化可通过运行mysql_install_db来实现,其输出结果如下:
[root@ibmp630/usr/local/bin#]./mysql_install_db
Preparing db table
Preparing host table
Preparing user table
Preparing func table
Preparing tables_priv table
Preparing columns_priv table
Installing all prepared tables

To start mysqld at boot time you have to copy support-files/mysql.server
to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
This is done with:
/usr/local/bin/mysqladmin -u root -p password 'new-password'
/usr/local/bin/mysqladmin -u root -h ibmp630 -p password 'new-password'
See the manual for more instructions.

You can start the MySQL daemon with:
cd /usr/local ; /usr/local/bin/safe_mysqld &
You can test the MySQL daemon with the benchmarks in the 'sql-bench' directory:
cd sql-bench ; run-all-tests

Please report any problems with the /usr/local/bin/mysqlbug script!

The latest information about MySQL is available on the web at
http://www.mysql.com
Support MySQL by buying support/licenses at https://order.mysql.com

从上面的输出信息可以看出,mysql_install_db实际上是创建MySQL的权限信息,mysql_install_db并不覆盖已经存在的权限信息表,一般情况下,mysql_install_db只是在MySQL安装完成后运行一次既可。

启动停止数据库
数据库的启动和停止是最基本的操作,可以通过mysql.server和safe_mysqld启动和停止MySQL。具体的操作方式为:
1) 利用mysql.server,位置/usr/local/share/mysql
启动数据库服务器:
mysql.server start
停止数据库服务器:
mysql.server stop
实际上,mysql.server启动服务器是通过safe_mysqld实现的。
2) safe_mysqld
safe_mysqld启动服务器,不需要带任何参数,如下:
safe_mysqld &
停止数据库,可以利用mysqladmin实现,如下:
mysqladmin shutdown

数据库管理
对一些商业性的数据库管理系统,数据库的管理是一个复杂的问题,如用户管理、数据管理、表管理、系统优化等等,MySQL数据库系统也存在同样的问题。这里只介绍mysqladmin和mysql两个基本的工具,更详细的操作请参考MySQL操作手册。
mysqladmin是最基本、常用的工具,如创建、删除数据库,修改用户密码,查看数据库状态等,mysqladmin常用的命令参数为:
create databasename --:创建数据库
drop databasename ----:删除数据库及其所有相关的表
extended-status ------:获取MySQL服务器的详细状态
kill id,id,... -------:杀掉MySQL的线程
password new-password :修改用户密码
ping -----------------:查看MySQL后台进程是否存在
processlist ----------:显示当前的服务器的线程
shutdown -------------:停止数据库服务器
status ---------------:获取MySQL服务器状态
version --------------:查看MySQL服务器版本信息

举几个简单的例子,如下:
1)修改MySQL用户root的密码为test,操作命令为:
[root@ibmp630/usr/local/bin#]mysqladmin -u root -p password 'test'
Enter password: <=== 输入旧的用户密码
2) 查看服务器的运行状态
命令为:mysqladmin processlist status,例如:
[root@ibmp630/usr/local/share/mysql#]mysqladmin -h ibmp630 proc stat
+----+------+------+----+---------+------+-------+--------+
| Id | User | Host | db | Command | Time | State | Info |
+----+------+---------+----+---------+------+-------+-----+
| 2 | root | ibmp630 | | Query | 0 | | show processlist |
+----+------+---------+----+---------+------+-------+-----+
Uptime: 39 Threads: 1 Questions: 2 Slow queries: 0 Opens: 6 Flush tables: 1
Open tables: 0 Queries per second avg: 0.051

要介绍的第二个工具为msql,这是MySQL客户端连结到服务器端的一个重要工具,通过它,我们可以得到一些更详细的数据库信息,完成对数据库的操作,使用方法为:
mysql –u user –p password
正确连结到服务器系统将显示如下提示符:
mysql>

简单介绍在mysql工具中常用几条命令,另外SQL语句的操作也是在mysql下完成的,对于SQL的操作,不再在此详细描述,请参考相关的手册。
1)查看MySQL数据库
show databases; 例如:
mysql> show databases;
+----------+
| Database |
+----------+
| mysql |
| test |
| testdb |
+----------+
3 rows in set (0.00 sec)

2)查看当前的数据库
select database(); 例如:
mysql> select database();
+------------+
| database() |
+------------+
| testdb |
+------------+
1 row in set (0.06 sec)

3) 打开并使用数据库
use database_name; 例如:
mysql> use testdb;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed

4) 查看表信息
show tables;
mysql> show tables;
+------------------+
| Tables_in_testdb |
+------------------+
| testtb |
+------------------+
1 row in set (0.00 sec)

5) 查看表的结构信息
desc table_name
mysql> desc db;
+---------------+---------------+----+---+-------+-----+
| Field --------| Type ---------|Null|Key|Default|Extra|
+---------------+---------------+----+---+-------+-----+
|Host ----------|char(60) binary| ---|PRI| ------| ----|
|Db ------------|char(64) binary| ---|PRI| ------| ----|
|User ----------|char(16) binary| ---|PRI| ------|---- |
|Select_priv ---|enum('N','Y') -| ---| --| N ----| ----|
|Insert_priv----|enum('N','Y') -| ---| --| N ----|---- |
|Update_priv ---|enum('N','Y') -| ---| --| N ----| ----|
|Delete_priv ---|enum('N','Y') -| ---| --| N ----|---- |
|Create_priv ---|enum('N','Y') -| ---| --| N ----|---- |
|Drop_priv -----|enum('N','Y') -| ---| --| N ----| ----|
|Grant_priv ----|enum('N','Y') -| ---|-- | N ----| ----|
|References_priv|enum('N','Y') -| ---|-- | N ----| ----|
|Index_priv ----|enum('N','Y') -| ---| --| N ----|---- |
|Alter_priv ----|enum('N','Y') -| ---| --| N ----| ----|
+---------------+---------------+----+---+-------+-----+
13 rows in set (0.00 sec)

以上给出的知识MySQL的一些基本知识,这篇文章的目的是希望读者看完后能基本操作
MySQL数据库,更完整的信息请参考MySQL的使用手册。


MySQL简单使用
MySQL最初广泛地使用在Linux系统,随着MySQL的普及,在一些主流的UNIX系统中,如AIX,Solaris,也逐渐的多了起来,这篇文章将介绍如何在AIX平台上使用MySQL数据库。在以下的内容中将按照数据库初始化、数据库管理、操作三个方面介绍。
在介绍以下内容之前,应当先清楚的知道MySQL分布,这里说的分布是指缺省情况下的安装配置,其系统文件、数据文件、头文件及提供的库文件分布如下:
系统文件: /usr/local/bin
头文件: /usr/local/include/mysql
库文件: /usr/local/lib/mysql
数据库文件:/var/mysql,按创建的数据库名称安树状结构分布

数据库初始化
通常情况下,MySQL初次安张结束后,如果直接运行mysql连结MySQL数据库服务器,会出
现这样的错误,Can't start server: Bind on TCP/IP port: Address already in use或者Can't start server : Bind on unix socket
直观的来看象是端口被占用的问题,实际上是MySQL未初始化引起的。对MySQL的初始化可通过运行mysql_install_db来实现,其输出结果如下:
[root@ibmp630/usr/local/bin#]./mysql_install_db
Preparing db table
Preparing host table
Preparing user table
Preparing func table
Preparing tables_priv table
Preparing columns_priv table
Installing all prepared tables

To start mysqld at boot time you have to copy support-files/mysql.server
to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
This is done with:
/usr/local/bin/mysqladmin -u root -p password 'new-password'
/usr/local/bin/mysqladmin -u root -h ibmp630 -p password 'new-password'
See the manual for more instructions.

You can start the MySQL daemon with:
cd /usr/local ; /usr/local/bin/safe_mysqld &
You can test the MySQL daemon with the benchmarks in the 'sql-bench' directory:
cd sql-bench ; run-all-tests

Please report any problems with the /usr/local/bin/mysqlbug script!

The latest information about MySQL is available on the web at
http://www.mysql.com
Support MySQL by buying support/licenses at https://order.mysql.com

从上面的输出信息可以看出,mysql_install_db实际上是创建MySQL的权限信息,mysql_install_db并不覆盖已经存在的权限信息表,一般情况下,mysql_install_db只是在MySQL安装完成后运行一次既可。

启动停止数据库
数据库的启动和停止是最基本的操作,可以通过mysql.server和safe_mysqld启动和停止MySQL。具体的操作方式为:
1) 利用mysql.server,位置/usr/local/share/mysql
启动数据库服务器:
mysql.server start
停止数据库服务器:
mysql.server stop
实际上,mysql.server启动服务器是通过safe_mysqld实现的。
2) safe_mysqld
safe_mysqld启动服务器,不需要带任何参数,如下:
safe_mysqld &
停止数据库,可以利用mysqladmin实现,如下:
mysqladmin shutdown

数据库管理
对一些商业性的数据库管理系统,数据库的管理是一个复杂的问题,如用户管理、数据管理、表管理、系统优化等等,MySQL数据库系统也存在同样的问题。这里只介绍mysqladmin和mysql两个基本的工具,更详细的操作请参考MySQL操作手册。
mysqladmin是最基本、常用的工具,如创建、删除数据库,修改用户密码,查看数据库状态等,mysqladmin常用的命令参数为:
create databasename --:创建数据库
drop databasename ----:删除数据库及其所有相关的表
extended-status ------:获取MySQL服务器的详细状态
kill id,id,... -------:杀掉MySQL的线程
password new-password :修改用户密码
ping -----------------:查看MySQL后台进程是否存在
processlist ----------:显示当前的服务器的线程
shutdown -------------:停止数据库服务器
status ---------------:获取MySQL服务器状态
version --------------:查看MySQL服务器版本信息

举几个简单的例子,如下:
1)修改MySQL用户root的密码为test,操作命令为:
[root@ibmp630/usr/local/bin#]mysqladmin -u root -p password 'test'
Enter password: <=== 输入旧的用户密码
2) 查看服务器的运行状态
命令为:mysqladmin processlist status,例如:
[root@ibmp630/usr/local/share/mysql#]mysqladmin -h ibmp630 proc stat
+----+------+------+----+---------+------+-------+--------+
| Id | User | Host | db | Command | Time | State | Info |
+----+------+---------+----+---------+------+-------+-----+
| 2 | root | ibmp630 | | Query | 0 | | show processlist |
+----+------+---------+----+---------+------+-------+-----+
Uptime: 39 Threads: 1 Questions: 2 Slow queries: 0 Opens: 6 Flush tables: 1
Open tables: 0 Queries per second avg: 0.051

要介绍的第二个工具为msql,这是MySQL客户端连结到服务器端的一个重要工具,通过它,我们可以得到一些更详细的数据库信息,完成对数据库的操作,使用方法为:
mysql –u user –p password
正确连结到服务器系统将显示如下提示符:
mysql>

简单介绍在mysql工具中常用几条命令,另外SQL语句的操作也是在mysql下完成的,对于SQL的操作,不再在此详细描述,请参考相关的手册。
1)查看MySQL数据库
show databases; 例如:
mysql> show databases;
+----------+
| Database |
+----------+
| mysql |
| test |
| testdb |
+----------+
3 rows in set (0.00 sec)

2)查看当前的数据库
select database(); 例如:
mysql> select database();
+------------+
| database() |
+------------+
| testdb |
+------------+
1 row in set (0.06 sec)

3) 打开并使用数据库
use database_name; 例如:
mysql> use testdb;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed

4) 查看表信息
show tables;
mysql> show tables;
+------------------+
| Tables_in_testdb |
+------------------+
| testtb |
+------------------+
1 row in set (0.00 sec)

5) 查看表的结构信息
desc table_name
mysql> desc db;
+---------------+---------------+----+---+-------+-----+
| Field --------| Type ---------|Null|Key|Default|Extra|
+---------------+---------------+----+---+-------+-----+
|Host ----------|char(60) binary| ---|PRI| ------| ----|
|Db ------------|char(64) binary| ---|PRI| ------| ----|
|User ----------|char(16) binary| ---|PRI| ------|---- |
|Select_priv ---|enum('N','Y') -| ---| --| N ----| ----|
|Insert_priv----|enum('N','Y') -| ---| --| N ----|---- |
|Update_priv ---|enum('N','Y') -| ---| --| N ----| ----|
|Delete_priv ---|enum('N','Y') -| ---| --| N ----|---- |
|Create_priv ---|enum('N','Y') -| ---| --| N ----|---- |
|Drop_priv -----|enum('N','Y') -| ---| --| N ----| ----|
|Grant_priv ----|enum('N','Y') -| ---|-- | N ----| ----|
|References_priv|enum('N','Y') -| ---|-- | N ----| ----|
|Index_priv ----|enum('N','Y') -| ---| --| N ----|---- |
|Alter_priv ----|enum('N','Y') -| ---| --| N ----| ----|
+---------------+---------------+----+---+-------+-----+
13 rows in set (0.00 sec)

以上给出的知识MySQL的一些基本知识,这篇文章的目的是希望读者看完后能基本操作
MySQL数据库,更完整的信息请参考MySQL的使用手册。

MySQL简单使用
MySQL最初广泛地使用在Linux系统,随着MySQL的普及,在一些主流的UNIX系统中,如AIX,Solaris,也逐渐的多了起来,这篇文章将介绍如何在AIX平台上使用MySQL数据库。在以下的内容中将按照数据库初始化、数据库管理、操作三个方面介绍。
在介绍以下内容之前,应当先清楚的知道MySQL分布,这里说的分布是指缺省情况下的安装配置,其系统文件、数据文件、头文件及提供的库文件分布如下:
系统文件: /usr/local/bin
头文件: /usr/local/include/mysql
库文件: /usr/local/lib/mysql
数据库文件:/var/mysql,按创建的数据库名称安树状结构分布

数据库初始化
通常情况下,MySQL初次安张结束后,如果直接运行mysql连结MySQL数据库服务器,会出
现这样的错误,Can't start server: Bind on TCP/IP port: Address already in use或者Can't start server : Bind on unix socket
直观的来看象是端口被占用的问题,实际上是MySQL未初始化引起的。对MySQL的初始化可通过运行mysql_install_db来实现,其输出结果如下:
[root@ibmp630/usr/local/bin#]./mysql_install_db
Preparing db table
Preparing host table
Preparing user table
Preparing func table
Preparing tables_priv table
Preparing columns_priv table
Installing all prepared tables

To start mysqld at boot time you have to copy support-files/mysql.server
to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
This is done with:
/usr/local/bin/mysqladmin -u root -p password 'new-password'
/usr/local/bin/mysqladmin -u root -h ibmp630 -p password 'new-password'
See the manual for more instructions.

You can start the MySQL daemon with:
cd /usr/local ; /usr/local/bin/safe_mysqld &
You can test the MySQL daemon with the benchmarks in the 'sql-bench' directory:
cd sql-bench ; run-all-tests

Please report any problems with the /usr/local/bin/mysqlbug script!

The latest information about MySQL is available on the web at
http://www.mysql.com
Support MySQL by buying support/licenses at https://order.mysql.com

从上面的输出信息可以看出,mysql_install_db实际上是创建MySQL的权限信息,mysql_install_db并不覆盖已经存在的权限信息表,一般情况下,mysql_install_db只是在MySQL安装完成后运行一次既可。

启动停止数据库
数据库的启动和停止是最基本的操作,可以通过mysql.server和safe_mysqld启动和停止MySQL。具体的操作方式为:
1) 利用mysql.server,位置/usr/local/share/mysql
启动数据库服务器:
mysql.server start
停止数据库服务器:
mysql.server stop
实际上,mysql.server启动服务器是通过safe_mysqld实现的。
2) safe_mysqld
safe_mysqld启动服务器,不需要带任何参数,如下:
safe_mysqld &
停止数据库,可以利用mysqladmin实现,如下:
mysqladmin shutdown

数据库管理
对一些商业性的数据库管理系统,数据库的管理是一个复杂的问题,如用户管理、数据管理、表管理、系统优化等等,MySQL数据库系统也存在同样的问题。这里只介绍mysqladmin和mysql两个基本的工具,更详细的操作请参考MySQL操作手册。
mysqladmin是最基本、常用的工具,如创建、删除数据库,修改用户密码,查看数据库状态等,mysqladmin常用的命令参数为:
create databasename --:创建数据库
drop databasename ----:删除数据库及其所有相关的表
extended-status ------:获取MySQL服务器的详细状态
kill id,id,... -------:杀掉MySQL的线程
password new-password :修改用户密码
ping -----------------:查看MySQL后台进程是否存在
processlist ----------:显示当前的服务器的线程
shutdown -------------:停止数据库服务器
status ---------------:获取MySQL服务器状态
version --------------:查看MySQL服务器版本信息

举几个简单的例子,如下:
1)修改MySQL用户root的密码为test,操作命令为:
[root@ibmp630/usr/local/bin#]mysqladmin -u root -p password 'test'
Enter password: <=== 输入旧的用户密码
2) 查看服务器的运行状态
命令为:mysqladmin processlist status,例如:
[root@ibmp630/usr/local/share/mysql#]mysqladmin -h ibmp630 proc stat
+----+------+------+----+---------+------+-------+--------+
| Id | User | Host | db | Command | Time | State | Info |
+----+------+---------+----+---------+------+-------+-----+
| 2 | root | ibmp630 | | Query | 0 | | show processlist |
+----+------+---------+----+---------+------+-------+-----+
Uptime: 39 Threads: 1 Questions: 2 Slow queries: 0 Opens: 6 Flush tables: 1
Open tables: 0 Queries per second avg: 0.051

要介绍的第二个工具为msql,这是MySQL客户端连结到服务器端的一个重要工具,通过它,我们可以得到一些更详细的数据库信息,完成对数据库的操作,使用方法为:
mysql –u user –p password
正确连结到服务器系统将显示如下提示符:
mysql>

简单介绍在mysql工具中常用几条命令,另外SQL语句的操作也是在mysql下完成的,对于SQL的操作,不再在此详细描述,请参考相关的手册。
1)查看MySQL数据库
show databases; 例如:
mysql> show databases;
+----------+
| Database |
+----------+
| mysql |
| test |
| testdb |
+----------+
3 rows in set (0.00 sec)

2)查看当前的数据库
select database(); 例如:
mysql> select database();
+------------+
| database() |
+------------+
| testdb |
+------------+
1 row in set (0.06 sec)

3) 打开并使用数据库
use database_name; 例如:
mysql> use testdb;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed

4) 查看表信息
show tables;
mysql> show tables;
+------------------+
| Tables_in_testdb |
+------------------+
| testtb |
+------------------+
1 row in set (0.00 sec)

5) 查看表的结构信息
desc table_name
mysql> desc db;
+---------------+---------------+----+---+-------+-----+
| Field --------| Type ---------|Null|Key|Default|Extra|
+---------------+---------------+----+---+-------+-----+
|Host ----------|char(60) binary| ---|PRI| ------| ----|
|Db ------------|char(64) binary| ---|PRI| ------| ----|
|User ----------|char(16) binary| ---|PRI| ------|---- |
|Select_priv ---|enum('N','Y') -| ---| --| N ----| ----|
|Insert_priv----|enum('N','Y') -| ---| --| N ----|---- |
|Update_priv ---|enum('N','Y') -| ---| --| N ----| ----|
|Delete_priv ---|enum('N','Y') -| ---| --| N ----|---- |
|Create_priv ---|enum('N','Y') -| ---| --| N ----|---- |
|Drop_priv -----|enum('N','Y') -| ---| --| N ----| ----|
|Grant_priv ----|enum('N','Y') -| ---|-- | N ----| ----|
|References_priv|enum('N','Y') -| ---|-- | N ----| ----|
|Index_priv ----|enum('N','Y') -| ---| --| N ----|---- |
|Alter_priv ----|enum('N','Y') -| ---| --| N ----| ----|
+---------------+---------------+----+---+-------+-----+
13 rows in set (0.00 sec)

以上给出的知识MySQL的一些基本知识,这篇文章的目的是希望读者看完后能基本操作
MySQL数据库,更完整的信息请参考MySQL的使用手册。

MySQL最初广泛地使用在Linux系统,随着MySQL的普及,在一些主流的UNIX系统中,如AIX,Solaris,也逐渐的多了起来,这篇文章将介绍如何在AIX平台上使用MySQL数据库。在以下的内容中将按照数据库初始化、数据库管理、操作三个方面介绍。
在介绍以下内容之前,应当先清楚的知道MySQL分布,这里说的分布是指缺省情况下的安装配置,其系统文件、数据文件、头文件及提供的库文件分布如下:
系统文件: /usr/local/bin
头文件: /usr/local/include/mysql
库文件: /usr/local/lib/mysql
数据库文件:/var/mysql,按创建的数据库名称安树状结构分布

数据库初始化
通常情况下,MySQL初次安张结束后,如果直接运行mysql连结MySQL数据库服务器,会出
现这样的错误,Can't start server: Bind on TCP/IP port: Address already in use或者Can't start server : Bind on unix socket
直观的来看象是端口被占用的问题,实际上是MySQL未初始化引起的。对MySQL的初始化可通过运行mysql_install_db来实现,其输出结果如下:
[root@ibmp630/usr/local/bin#]./mysql_install_db
Preparing db table
Preparing host table
Preparing user table
Preparing func table
Preparing tables_priv table
Preparing columns_priv table
Installing all prepared tables

To start mysqld at boot time you have to copy support-files/mysql.server
to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
This is done with:
/usr/local/bin/mysqladmin -u root -p password 'new-password'
/usr/local/bin/mysqladmin -u root -h ibmp630 -p password 'new-password'
See the manual for more instructions.

You can start the MySQL daemon with:
cd /usr/local ; /usr/local/bin/safe_mysqld &
You can test the MySQL daemon with the benchmarks in the 'sql-bench' directory:
cd sql-bench ; run-all-tests

Please report any problems with the /usr/local/bin/mysqlbug script!

The latest information about MySQL is available on the web at
http://www.mysql.com
Support MySQL by buying support/licenses at https://order.mysql.com

从上面的输出信息可以看出,mysql_install_db实际上是创建MySQL的权限信息,mysql_install_db并不覆盖已经存在的权限信息表,一般情况下,mysql_install_db只是在MySQL安装完成后运行一次既可。

启动停止数据库
数据库的启动和停止是最基本的操作,可以通过mysql.server和safe_mysqld启动和停止MySQL。具体的操作方式为:
1) 利用mysql.server,位置/usr/local/share/mysql
启动数据库服务器:
mysql.server start
停止数据库服务器:
mysql.server stop
实际上,mysql.server启动服务器是通过safe_mysqld实现的。
2) safe_mysqld
safe_mysqld启动服务器,不需要带任何参数,如下:
safe_mysqld &
停止数据库,可以利用mysqladmin实现,如下:
mysqladmin shutdown

数据库管理
对一些商业性的数据库管理系统,数据库的管理是一个复杂的问题,如用户管理、数据管理、表管理、系统优化等等,MySQL数据库系统也存在同样的问题。这里只介绍mysqladmin和mysql两个基本的工具,更详细的操作请参考MySQL操作手册。
mysqladmin是最基本、常用的工具,如创建、删除数据库,修改用户密码,查看数据库状态等,mysqladmin常用的命令参数为:
create databasename --:创建数据库
drop databasename ----:删除数据库及其所有相关的表
extended-status ------:获取MySQL服务器的详细状态
kill id,id,... -------:杀掉MySQL的线程
password new-password :修改用户密码
ping -----------------:查看MySQL后台进程是否存在
processlist ----------:显示当前的服务器的线程
shutdown -------------:停止数据库服务器
status ---------------:获取MySQL服务器状态
version --------------:查看MySQL服务器版本信息

举几个简单的例子,如下:
1)修改MySQL用户root的密码为test,操作命令为:
[root@ibmp630/usr/local/bin#]mysqladmin -u root -p password 'test'
Enter password: <=== 输入旧的用户密码
2) 查看服务器的运行状态
命令为:mysqladmin processlist status,例如:
[root@ibmp630/usr/local/share/mysql#]mysqladmin -h ibmp630 proc stat
+----+------+------+----+---------+------+-------+--------+
| Id | User | Host | db | Command | Time | State | Info |
+----+------+---------+----+---------+------+-------+-----+
| 2 | root | ibmp630 | | Query | 0 | | show processlist |
+----+------+---------+----+---------+------+-------+-----+
Uptime: 39 Threads: 1 Questions: 2 Slow queries: 0 Opens: 6 Flush tables: 1
Open tables: 0 Queries per second avg: 0.051

要介绍的第二个工具为msql,这是MySQL客户端连结到服务器端的一个重要工具,通过它,我们可以得到一些更详细的数据库信息,完成对数据库的操作,使用方法为:
mysql –u user –p password
正确连结到服务器系统将显示如下提示符:
mysql>

简单介绍在mysql工具中常用几条命令,另外SQL语句的操作也是在mysql下完成的,对于SQL的操作,不再在此详细描述,请参考相关的手册。
1)查看MySQL数据库
show databases; 例如:
mysql> show databases;
+----------+
| Database |
+----------+
| mysql |
| test |
| testdb |
+----------+
3 rows in set (0.00 sec)

2)查看当前的数据库
select database(); 例如:
mysql> select database();
+------------+
| database() |
+------------+
| testdb |
+------------+
1 row in set (0.06 sec)

3) 打开并使用数据库
use database_name; 例如:
mysql> use testdb;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed

4) 查看表信息
show tables;
mysql> show tables;
+------------------+
| Tables_in_testdb |
+------------------+
| testtb |
+------------------+
1 row in set (0.00 sec)

5) 查看表的结构信息
desc table_name
mysql> desc db;
+---------------+---------------+----+---+-------+-----+
| Field --------| Type ---------|Null|Key|Default|Extra|
+---------------+---------------+----+---+-------+-----+
|Host ----------|char(60) binary| ---|PRI| ------| ----|
|Db ------------|char(64) binary| ---|PRI| ------| ----|
|User ----------|char(16) binary| ---|PRI| ------|---- |
|Select_priv ---|enum('N','Y') -| ---| --| N ----| ----|
|Insert_priv----|enum('N','Y') -| ---| --| N ----|---- |
|Update_priv ---|enum('N','Y') -| ---| --| N ----| ----|
|Delete_priv ---|enum('N','Y') -| ---| --| N ----|---- |
|Create_priv ---|enum('N','Y') -| ---| --| N ----|---- |
|Drop_priv -----|enum('N','Y') -| ---| --| N ----| ----|
|Grant_priv ----|enum('N','Y') -| ---|-- | N ----| ----|
|References_priv|enum('N','Y') -| ---|-- | N ----| ----|
|Index_priv ----|enum('N','Y') -| ---| --| N ----|---- |
|Alter_priv ----|enum('N','Y') -| ---| --| N ----| ----|
+---------------+---------------+----+---+-------+-----+
13 rows in set (0.00 sec)

以上给出的知识MySQL的一些基本知识,这篇文章的目的是希望读者看完后能基本操作
MySQL数据库,更完整的信息请参考MySQL的使用手册。

posted on 2010-06-26 13:05 杨粼波 阅读(1159) 评论(0)  编辑 收藏 引用


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理