当前位置: 首页 > 图文教程 > 数据库 > MYSQL > 如何在Unix系统环境下安装MySQL数据库

MYSQL
Mysql教程:如何修改默认密码
SQL Server教程:三种导入导出数据使用方式比较
Mysql技巧:指定只监听某个特定地址的设置方法
Mysql教程:1067错误解决方法
解决Mysql 错误:cannot create windows service for
解决Mysql连接过多错误的方法
Mysql教程:数据库字符替换和replace函数的使用
Mysql教程:性能跟踪语句
Mysql教程:对MySQL中的锁机制的总结
Mysql教程:介绍TIMESTAMP时间戳的使用
Mysql教程:将txt文本中的数据轻松导入MySQL表中的方法
MySQL:小编浅谈MySQL中的Geometry类
大型门户网站架构设计的可伸缩性
MYSQL教程:缓慢的drop table 操作
优化SQL语句需要注意的4点
MySQL前途难料开源数据库下一个领袖是谁?
网站Access数据库文件更安全的3种措施
sql xml入门:xpath和xquery
QA里执行sp_attach_db出现错误1813
MySQL中文模糊检索问题解决方法

MYSQL 中的 如何在Unix系统环境下安装MySQL数据库


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 38 ::
收藏到网摘: n/a

安装时建议你为MySQL管理创建一个用户和组。由该组用户运行mysql服务器并执行管理任务。(也可以以root身份运行服务器,但是不推荐)

第一步创建一个用户来运行服务器。在Solaris和unix下,可以用useradd和groupadd使用工具来完成。取一个名字叫mysql吧。(当然,任何你喜欢的id都可以)所以在做其它事情之前,利用su命令成为root:

$ su - root

$ groupadd mysql

$ useradd -g mysql mysql

选择要安装mysql软件的位置,并将当前目录转换到该目录。一般的,将安装到/usr/local,这是MySQL软件的标准安装位置。现在进去,

$ cd /usr/local

解开软件包:

$ gunzip -c /tmp/mysql -3.23.xx.tar.gz | tar -xf -

因为要安装在Solaris服务器上,所以如果安装的是不同版本的tar,例如GNU的tar,则上面的命令将不会起作用。这是要用下面的命令:

$ gunzip -c /tmp/mysql -3.23.xx.tar.gz | gtar -xf -

现在可以查看一下新目录,看是否存在

$ ls -ld mysql*

total 1

drwxr-xr-x 28 user user 1024 Jul 18 14:29 mysql-3.23.x/

下一步是创建一个符号链接,以便安装能够指向/usr/local/mysql:

$ ln -s mysql-3.23.x mysql

$ ls -ld mysql*

就会出现表示连接成功的行来。按照上帖软件安装好后,还有几项配置任务要完成。运行scripts/mysql_install_db创建MySQL许可表:

$ scripts/mysql_install_db

Preparing db talbe

Preparing host table

Preparing user table

Preparing func table

Preparing tables_priv table

Preparing columns_priv table

Installing all prepared tables

010726 19:40:05 ./bin/mysqld: Shutdown Complete

设置二进制文件的所有权,从而使之归root所有,并属于前面创建的MySQL

管理员组(这个例子为mysql)

$ chown -R root /usr/local/mysql

$ chgrp -R mysql /usr/local/mysql

将数据目录的所有权设置为先前创建的MySQL管理用户

$ chown -R mysql /usr/local/mysql/data

所有权设置完成

启动服务器需运行safe_mysqld:

$ bin/safe_mysqld --usr=mysql &

一般要让MySQL在服务器引导时就运行。为此,可以将support-files/mysql.server复制到系统适当的位置就ok了。

 

为了确保MySQL能正常工作,需要运行一些简单的测试. 如果输出结果: BINDIR = /usr/local/mysql/bin,就证明MySQL工作正常. BINDIR 的值与上面选择的prefix 选项有关。


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

# BINDIR/mysqlshow -p

+---------------+

| Databases |

+---------------+

| mysql |

+---------------+

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

一旦你安装了MySQL, 它将会自动生成两个数据库。一个用于管理用户、主机和服务器数据库权限。另一个是测试数据库(test database)。我们可以使用测试数据库。 但是,我们想简单快捷的向你介绍MySQL中一些可使用的指令的概貌。这还可以确保 root 被设置为能够完全访问服务器,例如: root可以允许创建数据库、表单等.. 所以我们将创建一个test2数据库用于以后的测试。在通过指令进入MySQL前,系统将提示输入新创建的root口令。 应该记得你已改过 root的口令了。

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

# mysql -u root -p

mysql> show databases;

+----------------+

| Database |

+----------------+

| mysql |

| test |

+----------------+

mysql> create database test2;

Query OK, 1 row affected (0.00 sec)

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

按照下面两段代码,选择使用新的数据库,并创建一个名称为tst_tbl的表, 它有两个字段。第一个字段(field 1)为id 字段,通过它可以看到记录的id号。从本质上看,这只是一列纯数字。第二个字段为名称字段,在其中可以存储书的名称。这些字段的格式为: field 1 (id) 为长度为3的整数型(int), field 2 (name)为长度为50的字符串型(char)。 我们对id的赋值可以对数据查找和标引。

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

mysql> use test2;

Database changed

mysql> CREATE TABLE books ( id int(3) not null

-> auto_increment, name char(50) not null,

-> unique(id), primary key(id));

Query OK, 0 rows affected (0.00 sec)

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

现在用下面命令检查库是否正确。

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


mysql> show tables;

+---------------------+

| Tables in test2 |

+---------------------+

| books |

+---------------------+

1 row in set (0.00 sec)


mysql> describe books;

+-------+-------------+------+------+----------+----------------+

| Field | Type | Null | Key | Default | Extra |

+-------+-------------+------+------+----------+----------------+

| id | int(3) | | PRI | 0 | auto_increment |

| name | char(50) | |

+-------+-------------+------+------+----------+----------------+

2 rows in set (0.00 sec)


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


注意:describe指令基本描绘出表的布局。

OK, 下面介绍一些真正有用的SQL指令:如何在数据库中插入和选择数据。现在可以向新建表中加入几条记录。


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

mysql> INSERT INTO books (name) values(PHP 4 Newbies);

Query OK, 1 row affected (0.00 sec)

mysql> INSERT INTO books (name) values(Red Hat Linux 6 Server);

Query OK, 1 row affected (0.00 sec)

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


现在检查一下新的记录,并熟悉一下select指令。


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

mysql> SELECT * from books;

+----+----------------------------------+

| id | name |

+----+----------------------------------+

| 1 | PHP for Newbies |

| 2 | Red Hat Linux 6 Server |

+----+----------------------------------+

2 rows in set (0.00 sec)


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

这样MySQL服务器的就已经能正常运行了。我们可以继续增加记录,但是在此就没有更多意义了。

注意:当你向数据库插入记录时,不必指定id。这是因为你创建id 字段有自动增加的选项。

下面介绍如何进行快速删除。这只是给你一个简单信息,记住你可以在mysql web站点http://www.mysql.com找到所有你所想要的mysql指令和服务器的信息。

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

mysql> delete from books where id=1;

Query OK, 1 row affected (0.00 sec)

mysql> select * from books;

+----+-----------------------------------+

| id | name |

+----+-----------------------------------+

| 2 | Red Hat Linux 6 Server |

+----+-----------------------------------+

1 row in set (0.00 sec)