本文目录一览:
- 1、如何使用mysql linux
- 2、如何在Linux下使用MySQL?如何在Linux下使用MySQL
- 3、还不会在Linux中安装Mysql?
- 4、基于linux的mysql主从同步解决了什么问题
如何使用mysql linux
1Linux下如何创建mysqld数据库的管理用户?
数据库安装好后,我们应该为mysql数据库创建一个管理帐号。要把root用户设置为管理员,我们应该运行下面的命令;
[root@linuxsir01 root]# /opt/mysql/bin/mysqladmin -u root password 123456
[root@linuxsir01 root]#
通过上面的命令,我们可以知道,mysql数据库的管理员是root,密码是123456。
2]如何进入mysql数据库?以mysql数据库管理员root,密码为123456为例;
[root@linuxsir01 root]#/opt/mysql/bin/mysql -uroot -p123456
输出上面的命令后,出现的是如下的提示;
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 6 to server version: 3.23.58
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql
注意:操作这些命令的时候,应该把mysqld服务器打开。这些新手兄弟早就知道了吧:)
3]如何在数据库中操作命令呢,我想这是mysql手册都有的,我主要说几个要注意的地方。其实我也会不了几个命令。如果自己想学的弟兄,也不是什么难事;在windows中操作过mysql的,其实在这里也是一样的,mysql是跨平台的数据库,用法都是相同的。
在mysql数据库中,每操作一个命令,都是;号结尾的,可能有的新手弟兄,忘记输入了;号结尾,结果退不出来。:):)
1]查看mysql中都有哪些数据库?
代码:
+----------+
| Database |
+----------+
| mysql |
| test |
+----------+
2 rows in set (0.00 sec)
mysql
在mysql安装好,设置好管理员后,第一次进入系统,我们用show databases;命令查看数据库的列表,发现有两个数据库,mysql和test,这是系统自建的,是让大家练习用的。
4]如何创建和删除一个数据库?
比如我要创建一个名为linux的数据库,应该运行如下命令
mysql create database [数据库名];
所以我们应该运行如下的命令,来创建名为linux的数据库
mysql create database linux;
Query OK, 1 row affected (0.00 sec)
是不是建好了呢??肯定是建好了,因为都有OK了:)
查看是不是有linux这个数据库了呢?
代码:
mysql show databases;
+----------+
| Database |
+----------+
| linux |
| mysql |
| test |
+----------+
3 rows in set (0.00 sec)
mysql
那我们如何删除一个数据库呢??
mysql drop database [数据库名];
比如我们要把刚才创建的linux数据库删除,应该用下面的命令;
mysql drop database linux;
Query OK, 0 rows affected (0.00 sec)
是不是已经删除了呢??
代码:
mysql show databases;
+----------+
| Database |
+----------+
| mysql |
| test |
+----------+
2 rows in set (0.00 sec)
mysql
5]如何操作一个数据库呢,这个问题就比较多了,建议还是看一下mysql的手册吧。里面的东西太多了。如果操作一个数据库,首先是要指定一个数据库为当前数据库,应该用use命令
mysqluse [数据库];
比如我想指定linux这个数据库为当前数据库,应该是
mysql use linux;
Database changed
mysql
6]如何备份数据库??
比如我们要备份mysql中已经存在的名为linux的数据库,要用到命令mysqldump
命令格式如下:
[root@linuxsir01 root]# /opt/mysql/bin/mysqldump -uroot -p linux /root/linux.sql
Enter password:在这里输入数据库的密码
通过上面的命令,我们要明白两件事,首先备份数据库是要以数据库管理员的身份备份;其次:备份目的地是/root,备份的文件名是linux.sql。其实备份的位置和文件名,根据自己的情况来定。文件名可以自己来取,路径也可以自己来安排;
比如我想把linux的数据库备份到/home/beinan,数据库的文件名为linuxsir031130.sql,所以应该输入如下的命令。
[root@linuxsir01 root]#/opt/mysql/bin/mysqldump -uroot -p linux /home/beinan/linuxsir031130.sql
Enter password:在这里输入数据库管理员root的数据库密码
这样我们到/home/beinan目录下就能发现mysql中名为linux的数据库的备份文件linuxsir031130.sql
综上所述,我们学习时要学会变通。:):)
5]如何把把备份的数据库导入到数据库中?
首先我们还是要操作上面几个过程,比如添加数据库管理员(如果您没有添加过mysql数据库管理员的话),创建数据库等。
比如我们要把在/home/beinan这个目录中的linuxsir031130.sql这个备份,导入名为linux的数据库中,应该如下操作;
[root@linuxsir01 root]# /opt/mysql/bin/mysql -uroot -p linux /home/beinan/linuxsir031130.sql
Enter password:在这里输入密码
如果机器好,数据库比较小,几分钟就好了。
6]其它一些比较常用的mysql指令;
查看状态
mysql show status;
查看进程
代码:
mysql show processlist;
+----+------+-----------+------+---------+------+-------+------------------+
| Id | User | Host | db | Command | Time | State | Info |
+----+------+-----------+------+---------+------+-------+------------------+
| 16 | root | localhost | NULL | Query | 0 | NULL | show processlist |
+----+------+-----------+------+---------+------+-------+------------------+
1 row in set (0.00 sec)
mysql
查看表,应该先指定一个数据库为当前数据库;比如是名为linux的数据库;
mysqluse linux;
mysql show tables;
Empty set (0.00 sec)
mysql
7]对mysql数据库常用命令的一点补充;
几个常用的mysql相关的管理命令
mysql 命令:基本文本的,显示和使用的mysql数据库。前面已经简单的提过用法;比如登录等。
mysqladmin 命令,用来创建和维护mysql数据库的命令,前面已经简单的提过;
isamchk 是用来修复、检查和优化.ism后缀的数据库文件;
mysqldump 是用于备份数据库,前面已经简单的说明过;
myisamchk 用来修复.myi后缀的数据库文件;
比如我们要检查名为linux的数据库.myi数据库表是否存在问题,应该用下面的命令;
要把mysqld服务器停下来
[root@linuxsir01 root]# /opt/mysql/share/mysql.server stop
然后执行
[root@linuxsir01 root]# /opt/mysql/bin/myisamchk /opt/mysql/var/linux/*.MYI
上面的命令的意思就是检查所有的.myi文件,数据库的目录在/opt/mysql/var/linux/目录中
如果有问题,应该用-r参数来修复
[root@linuxsir01 root]# /opt/mysql/bin/myisamchk -r /opt/mysql/var/linux/*.MYI
6]mysqlshow 命令:显示用户选择的数据库和表
[root@linuxsir01 root]# /opt/mysql/bin/mysqlshow -uroot -p [数据库名]
比如我要查看名为linux的数据库;应该是:
[root@linuxsir01 root]# /opt/mysql/bin/mysqlshow -uroot -p linux
如何在Linux下使用MySQL?如何在Linux下使用MySQL
一、启动mysql服务
(1) rpm方式安装的mysql
-设置自动启动
#ntsysv --level 3
-手工启动
#service mysqld start
(2) 编译安装的mysql
-设置自动启动
#vi /etc/rc.d/rc.local
.......
/usr/local/mysql/bin/mysqld_safe
........
-手工启动
#/usr/local/mysql/bin/mysqld_safe
查看文章
mysql服务器(一)2009-06-15 11:18mysql服务器
一. 认识和安装mysql
1. 认识mysql
(1) mysql是一种网络数据库服务器产品
(2) mysql是开源的免费的
(3) mysql是关系型数据库管理系统,支持SQL.
(4) mysql无溢出漏洞
(5) mysql提供丰富的API
(6) mysql提供丰富的数据类型
(7) mysql具较强的移值性
2. 安装mysql软件
(1) rpm安装方式
#rpm -ivh perl-CGI....
perl-DBI....
perl-DBD-MySQL.....
mysq-....
mysql-server....
mysql-devel.....
(2) 编译安装方式
#groupadd mysql
#useradd -g mysql mysql
#tar -xzvf mysql-4.1.19.tar.gz
#cd mysql-4.1.19
#./configure --prefix=/usr/local/mysql
#make
#make install
#cp support-files/my-medium.cnf /etc/my.cnf
#cd /usr/local/mysql
#bin/mysql_install_db --user=mysql
#chown -R root .
#chown -R mysql var
#chgrp -R mysql .
3. 启动mysql服务
(1) rpm方式安装的mysql
-设置自动启动
#ntsysv --level 3
-手工启动
#service mysqld start
(2) 编译安装的mysql
-设置自动启动
#vi /etc/rc.d/rc.local
.......
/usr/local/mysql/bin/mysqld_safe
........
-手工启动
#/usr/local/mysql/bin/mysqld_safe
二、mysql的管理
1. 如何连接mysql服务器
(1) Linux客户机
#mysql [-h服务器地址] [-u用户名] [-p口令] [数据库名]
实例:
#mysql
mysql
#mysql -h192.168.3.1 -uadmin -plinux
mysql
(2) Windows客户机
-利用第三方mysql客户端软件
-利用浏览器连接(服务器必须安装web管理平台,如:phpmyadmin/webmin)
注:webmin的安装方法
#tar -xzvf webmin-1.25.tar.gz
#cd webmin-1.25
#./setup.sh
2. 数据库管理
(1) 认识mysql的数据库
-mysql服务器默认建立两个数据库,分别是mysql和test;其中mysql是系统数据库;test是学习数据库
-mysql服务器上的每个数据库都会在相应路径中建立与库同名的目录
-每个数据库可包含若干张表,每张表由*.frm、*.MYD和*.MYI文件构成
(2) 创建数据库
#mysql
mysqlcreate database 数据库名;
实例:
mysqlcreate database dbinfo;
(3) 查看服务器上已创建的数据库
#mysql
mysqlshow databases;
(4) 打开数据库
#mysql
mysqluse 数据库名;
实例:
mysqluse db1;
(5) 删除数据库
#mysql
mysqldrop database 数据库名;
实例:
mysqldrop database dbinfo;
3. 数据表的管理
(1) mysql提供的数据类型
-数字型
TINYINT 1字节
SMALLINT 2字节
MEDIUMINT 3B
INT 4B
BIGINT 8B
FLOAT[(M,D)] 4B
DOUBEL[(M,D)] 8B
DECIMAL(M,D)
-字符串型
char(M)
varchar(M)
tinytext
text
mediumtext
longtext
enum('..',...)
set(....)
-日期时间型
date
datetime
time
(2) 创建表
#mysql
mysqluse 数据库;
mysqlcreate table 表名 (
列名 数据类型 属性/约束;
.......
.....
) 表选项;
列属性/约束:
null/not null 是否允许为null
default 值 定义列的默认值
primary key 定义主键
check 表达式 定义列的取值范围
REFERENCES 表名(列名) 定义外部键
表选项:
TYPE=HEAP/ISAM/MYISAM/INNOBDB/BDB/MERGE //定义数据表引擎类型
实例:
mysqluse db1
mysqlcreate table users (
-id varchar(10) primary key,
-name varchar(20) not null,
-password varchar(30) not null) TYPE=MYISAM;
(3) 查看数据库中已建立的表
#mysql
mysqluse 数据库;
mysqlshow tables;
(4) 查看表的结构
#mysql
mysqluse 数据库;
mysqldescribe 表名;
(5) 修改表的结构
#mysql
mysqluse 数据库;
mysqlalter table 表名
add 列定义 //添加列
|drop 列名 //删除列
|add index 索引名 (列名) //添加索引
|drop index 索引名 //删除索引
|modify 列定义 //修改列的定义
|add primary key (列名) //添加主键
|drop primary key //删除主键
|rename 新表名 //修改表名称
实例:mysqlalter table users add memo text;
(6) 向表中插入数据
#mysql
mysqlinsert into 表名[(列名,...n)] values (值,...)
实例:
mysqlinsert into users values ('0001','user1','linux','system admin');
(7) 查看表中数据
#mysql
mysqlselect 列名 [as 别名] [,...n]|*|表达式
-from 表名[,...n]
-[where 条件表达式]
-[order by 列名]
-[group by 列名]
-[having 条件表达式]
实例:
mysqlselect * from users;
mysqlselect user,password from users;
mysqlselect user,password from users where name='user1';
mysqlselect * from users order by id desc;
mysqlselect 性别, count(*) as 人数 from 学生 group by 性别;
(8) 删除表中数据
#mysql
mysqldelete from 表名 [where 条件表达式];
实例:
mysqldelete from users;
mysqldelete from users where name='user1';
(9) 修改表中数据
#mysql
mysqlupdate 表名 set 列名=值 [where 条件表达式];
实例:
mysqlupdate users set password='132' where name='user1';
(10) 删除表
#mysql
mysqldrop table 表名;
实例:
mysqldrop table users;
还不会在Linux中安装Mysql?
mysql在linux下有三种安装方式,依照难以程度排序:
第一种是yum install mysql,这种安装方式最简单,初学可以采用。但是这种安装的弊端是安装的版本比较低,现在安装的话是5.17的版本。
第二种方式是下载最新的MySQL-5.6.25-1.rhel5.x86_64.rpm-bundle.tar,解压缩后,用rpm -ivh 包名,安装四个包就可以了,注意先后顺序。
第三种方式是下载最新的mysql-5.6.27-linux-glibc2.5-i686.tar.gz,解压缩后,手动配置。主要包括配置:增加mysql用户和群组;拷贝my-default.inf文件为my.inf到/etc/下;安装并初始化/mysql-5.6.27/scripts/mysql_install_db --user=mysql --basedir=/... --datadir=/...;增加到服务中chkconfig --add mysql ,chkconfig mysql on ;启动服务service mysql start ;修改root初始密码。操作完以上几部基本上就可以了。
基于linux的mysql主从同步解决了什么问题
有两种方法,一种方法使用mysql的check table和repair table 的sql语句,另一种方法是使用MySQL提供的多个myisamchk, isamchk数据检测恢复工具。前者使用起来比较简便。推荐使用。
1. check table 和 repair table
登陆mysql 终端:
mysql -uxxxxx -p dbname
check table tabTest;
如果出现的结果说Status是OK,则不用修复,如果有Error,可以用:
repair table tabTest;
进行修复,修复之后可以在用check table命令来进行检查。在新版本的phpMyAdmin里面也可以使用check/repair的功能。
2. myisamchk, isamchk
其中myisamchk适用于MYISAM类型的数据表,而isamchk适用于ISAM类型的数据表。这两条命令的主要参数相同,一般新的系统都使用MYISAM作为缺省的数据表类型,这里以myisamchk为例子进行说明。当发现某个数据表出现问题时可以使用:
myisamchk tablename.MYI
进行检测,如果需要修复的话,可以使用:
myisamchk -of tablename.MYI
关于myisamchk的详细参数说明,可以参见它的使用帮助。需要注意的时在进行修改时必须确保MySQL服务器没有访问这个数据表,保险的情况下是最好在进行检测时把MySQL服务器Shutdown掉。
-----------------------------
另外可以把下面的命令放在你的rc.local里面启动MySQL服务器前:
[ -x /tmp/mysql.sock ] /pathtochk/myisamchk -of /DATA_DIR/*/*.MYI
其中的/tmp/mysql.sock是MySQL监听的Sock文件位置,对于使用RPM安装的用户应该是/var/lib/mysql/mysql.sock,对于使用源码安装则是/tmp/mysql.sock可以根据自己的实际情况进行变更,而pathtochk则是myisamchk所在的位置,DATA_DIR是你的MySQL数据库存放的位置。
需要注意的时,如果你打算把这条命令放在你的rc.local里面,必须确认在执行这条指令时MySQL服务器必须没有启动!检测修复所有数据库(表)