Linux 系统上使用 MySQL 的好处,主要有四点:免费、跨平台、轻巧、多并发,详细的说明大家可以在网上细查,接下来主要谈谈安装。

在 Linux 上安装 MySQL 数据库,可能因为每个人的系统环境不一样,版本不一致等原因,安装中遇到的问题也可能各有不同,在这里,我是在 Win8.1 系统中安装了 VMware 虚拟机,在虚拟机中安装了 Ubuntu14.04 版本,下载地址见​​官网​​。

安装步骤详细如下:

1. 从官网上下载自己要安装的 MySQL 版本,这里用的是 mysql-5.6.17-linux-glibc2.5-i686.tar.gz,​​下载地址在这儿​​​,也可以在​​百度云管家下载​​。

2. 下载后的包应该是在 /home/Download 文件夹中,拷贝到 /home 目录下。


root@ubuntu:/home/tzhuwb/Downloads# ls
mysql-5.6.17-linux-glibc2.5-i686.tar.gz sogou_pinyin_linux_1.0.0.0024_i386.deb
root@ubuntu:/home/tzhuwb/Downloads# cp mysql-5.6.17-linux-glibc2.5-i686.tar.gz /home/

3. 进入到 home 目录下,解压缩。


root@ubuntu:/home/tzhuwb/Downloads# cd /home/
root@ubuntu:/home# ls
mysql-5.6.17-linux-glibc2.5-i686.tar.gz tzhuwb
root@ubuntu:/home# tar -zxvf mysql-5.6.17-linux-glibc2.5-i686.tar.gz

4. 修改解压缩后的目录名为 mysql。


root@ubuntu:/home# ls
mysql-5.6.17-linux-glibc2.5-i686 mysql-5.6.17-linux-glibc2.5-i686.tar.gz tzhuwb
root@ubuntu:/home# mv mysql-5.6.17-linux-glibc2.5-i686 mysql
root@ubuntu:/home# ls
mysql mysql-5.6.17-linux-glibc2.5-i686.tar.gz

5. 创建 mysql 组。


root@ubuntu:/home# groupadd mysql

6. 创建 mysql 用户并加入到 mysql 组中。


root@ubuntu:/home# useradd -g mysql mysql

7. 进入到 mysql 文件夹下,初始化数据。


root@ubuntu:/home# cd mysql
root@ubuntu:/home/mysql# ls
bin data include lib mysql-test scripts sql-bench
COPYING docs INSTALL-BINARY man README share support-files
root@ubuntu:/home/mysql$ scripts/mysql_install_db --user=mysql

这里可能会报如下错误:


Installing MySQL system tables..../bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

解决办法:


root@ubuntu:/home/mysql$ apt-get install libaio-dev

再次初始化就不报错误了

8. 修改文件的所有者为 root。


root@ubuntu:/home/mysql# ls -l
total 156
drwxr-xr-x 2 root root 4096 May 18 10:31 bin
-rw-r--r-- 1 7161 uucp 17987 Mar 15 03:07 COPYING
drwxr-xr-x 3 root root 4096 May 18 10:32 data
drwxr-xr-x 2 root root 4096 May 18 10:31 docs
drwxr-xr-x 3 root root 4096 May 18 10:31 include
-rw-r--r-- 1 7161 uucp 89144 Mar 15 03:07 INSTALL-BINARY
drwxr-xr-x 3 root root 4096 May 18 10:32 lib
drwxr-xr-x 4 root root 4096 May 18 10:31 man
drwxr-xr-x 10 root root 4096 May 18 10:31 mysql-test
-rw-r--r-- 1 7161 uucp 2496 Mar 15 03:07 README
drwxr-xr-x 2 root root 4096 May 18 10:31 scripts
drwxr-xr-x 28 root root 4096 May 18 10:32 share
drwxr-xr-x 4 root root 4096 May 18 10:31 sql-bench
drwxr-xr-x 3 root root 4096 May 18 10:32 support-files
root@ubuntu:/home/mysql# chown -R root .
root@ubuntu:/home/mysql# ls -l
total 156
drwxr-xr-x 2 root root 4096 May 18 10:31 bin
-rw-r--r-- 1 root uucp 17987 Mar 15 03:07 COPYING
drwxr-xr-x 3 root root 4096 May 18 10:32 data
drwxr-xr-x 2 root root 4096 May 18 10:31 docs
drwxr-xr-x 3 root root 4096 May 18 10:31 include
-rw-r--r-- 1 root uucp 89144 Mar 15 03:07 INSTALL-BINARY
drwxr-xr-x 3 root root 4096 May 18 10:32 lib
drwxr-xr-x 4 root root 4096 May 18 10:31 man
drwxr-xr-x 10 root root 4096 May 18 10:31 mysql-test
-rw-r--r-- 1 root uucp 2496 Mar 15 03:07 README
drwxr-xr-x 2 root root 4096 May 18 10:31 scripts
drwxr-xr-x 28 root root 4096 May 18 10:32 share
drwxr-xr-x 4 root root 4096 May 18 10:31 sql-bench
drwxr-xr-x 3 root root 4096 May 18 10:32 support-files

9. 修改 data 文件夹的所有者为 mysql。


root@ubuntu:/home/mysql# chown -R mysql data
root@ubuntu:/home/mysql# ls -l
total 156
drwxr-xr-x 2 root root 4096 May 18 10:31 bin
-rw-r--r-- 1 root uucp 17987 Mar 15 03:07 COPYING
drwxr-xr-x 3 mysql root 4096 May 18 10:32 data
drwxr-xr-x 2 root root 4096 May 18 10:31 docs
drwxr-xr-x 3 root root 4096 May 18 10:31 include
-rw-r--r-- 1 root uucp 89144 Mar 15 03:07 INSTALL-BINARY
drwxr-xr-x 3 root root 4096 May 18 10:32 lib
drwxr-xr-x 4 root root 4096 May 18 10:31 man
drwxr-xr-x 10 root root 4096 May 18 10:31 mysql-test
-rw-r--r-- 1 root uucp 2496 Mar 15 03:07 README
drwxr-xr-x 2 root root 4096 May 18 10:31 scripts
drwxr-xr-x 28 root root 4096 May 18 10:32 share
drwxr-xr-x 4 root root 4096 May 18 10:31 sql-bench
drwxr-xr-x 3 root root 4096 May 18 10:32 support-files

10. 改变用户组为 mysql。


root@ubuntu:/home/mysql# chgrp -R mysql .
root@ubuntu:/home/mysql# ls -l
total 156
drwxr-xr-x 2 root mysql 4096 May 18 10:31 bin
-rw-r--r-- 1 root mysql 17987 Mar 15 03:07 COPYING
drwxr-xr-x 3 mysql mysql 4096 May 18 10:32 data
drwxr-xr-x 2 root mysql 4096 May 18 10:31 docs
drwxr-xr-x 3 root mysql 4096 May 18 10:31 include
-rw-r--r-- 1 root mysql 89144 Mar 15 03:07 INSTALL-BINARY
drwxr-xr-x 3 root mysql 4096 May 18 10:32 lib
drwxr-xr-x 4 root mysql 4096 May 18 10:31 man
drwxr-xr-x 10 root mysql 4096 May 18 10:31 mysql-test
-rw-r--r-- 1 root mysql 2496 Mar 15 03:07 README
drwxr-xr-x 2 root mysql 4096 May 18 10:31 scripts
drwxr-xr-x 28 root mysql 4096 May 18 10:32 share
drwxr-xr-x 4 root mysql 4096 May 18 10:31 sql-bench
drwxr-xr-x 3 root mysql 4096 May 18 10:32 support-files

11. 启动 mysql。


root@ubuntu:/home/mysql# bin/mysqld_safe --user=mysql
140518 11:39:49 mysqld_safe Logging to '/home/mysql/data/ubuntu.err'.
140518 11:39:49 mysqld_safe Starting mysqld daemon with databases from /home/mysql/data

按Ctrl+Z退出。

12. 检查是否已启动 mysql。


root@ubuntu:/home/mysql# netstat -anp | more

如果能找到下面的服务,说明 mysql 已经启动成功了。


tcp6 0 0 :::3306 :::* LISTEN 7036/mysqld

13. 使用 mysql,进入 bin 目录中下。

root@ubuntu:/home/mysql# cd bin/
root@ubuntu:/home/mysql/bin# ./mysql -u root -p

14. 密码为空,直接回车即可进入 mysql 了,剩下的就是与 DB 相关的命令了。

Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.6.17 MySQL Community Server (GPL)

Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

15. 查看已有数据库。

show databases;

16. 创建数据库。

create database mydb;

17. 进入刚刚创建的数据库。

use mydb;

18. 查看已有表。

show tables;

19. 创建表。

create table users(userid varchar(8), username varchar(20));

20. 向表中插入数据。

insert into users values(‘01’,’zhangsan’);

21. 查看表中插入的数据。

select * from users;

22. 显示表结构。

desc users;

23. 备份数据库。

.../mysql/bin$ ./mysqldump -u root -p 数据库名 > /home/db_bak

24. 恢复数据库。

.../mysql/bin$ ./mysql -u root -p 数据库名 < /home/db_bak

注意:如果备份表,则用“数据库名.表名 > 备份文件”。

25. 退出数据库。

quit

26. 其它还有一大堆命令,这里写了几个最最基本的,大家共勉~