多学一点(六)——在Linux下安装配置MySQL

1.下载、安装 MySQL

[[email protected]~]# cd /usr/local/src

[[email protected]]# wget http://syslab.comsenz.com/downloads/linux/mysql-5.1.40-linux-i686-icc-glibc23.tar.gz

[[email protected]]# tar -zxvf mysql-5.1.40-linux-i686-icc-glibc23.tar.gz

[[email protected]]# mv mysql-5.1.40-linux-i686-icc-glibc23 /opt/mysql

创建 shell 为 /sbin/nologin 的 mysql 用户:

[[email protected]]# useradd -s /sbin/nologin mysql

[[email protected]]# mkdir -p /data/mysql

[[email protected]]# chown -R mysql:mysql /data/mysql

[[email protected]]# cd /opt/mysql

[[email protected]]# ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql

注:在这一步中,可能会报如下错误信息——

Installing MySQL system tables..../bin/mysqld: error while loading shared libraries: libaio.so.1……

这是因为缺少libaio 库而导致 mysql_install_db 失败,只要使用 yum 命令安装后再次执行 mysql_install_db 即可:

[[email protected]]# yum install -y libaio

[[email protected]]# cp support-files/my-large.cnf /etc/my.cnf

[[email protected]]# cp support-files/mysql.server /etc/init.d/mysqld

[[email protected]]# chmod 755 !$

[[email protected]]# vim !$

修改其中的两行,原内容分别如下:

basedir=

datadir=

修改后内容如下:

basedir=/opt/mysql

datadir=/data/mysql

保存退出。其中,basedir设置为 MySQL 的安装目录,对于 MySQL 来说,它的默认安装目录为/usr/local/mysql ,如果已经安装到了该目录下,则无需特意设置 basedir ,否则像本例中,将 MySQL 安装到了/opt/mysql 下,basedir 则要设置为 /opt/mysql 。同理,将 datadir 设置为和前面 mysql_install_db 中对应的 /data/mysql 。

将 mysqld 添加到服务:

[[email protected] mysql]#chkconfig --add mysqld

[[email protected]]# chkconfig mysqld on

启动 MySQL :

[[email protected] mysql]#service mysqld start

出现下列信息代表MySQL安装完成,已经启动:

Starting MySQL.SUCCESS!

最后,修改/etc/profile 文件,将 MySQL 下的 bin/ 目录添加到 PATH 中:

[[email protected]]# vim /etc/profile

exportPATH=$PATH:/opt/mysql/bin

[[email protected]]# source !$

这样一来,以后我们在使用 MySQL 命令时都无需再使用绝对路径了。

2.配置MySQL

占位,之后再来补充这部分内容,敬请期待。

3. MySQL 常用操作:

3.1 初次使用:

默认情况下,MySQL 的 root 用户是没有密码的,我们在使用MySQL 前的第一件事就是为其 root 用户设置密码:

[[email protected] ~]# mysqladmin -u rootpassword ‘newpasswd’

设置完成后,连接 MySQL 数据库(使用 MySQL的 root 用户登录时可以省略 -u root):

[[email protected] ~]# mysql -uroot -p  //等同于 mysql -p

Enter password:

输入刚刚设置的密码即可登录 root 用户,可以执行如下常用操作:

查看都有哪些库  show databases;
查看某个库的表  use db; show tables; 
查看表的字段  desc tb;
查看建表语句  show create table tb;
当前是哪个用户  select user();
当前库  select database();
创建库  create database db1; 
创建表  create table t1 (`id` int(4),`name` char(40));  
查看数据库版本  select version(); 
查看mysql状态  show status;
修改mysql参数  showvariables like ‘max_connect%‘; set global max_connect_errors = 1000; 
查看mysql队列  showprocesslist; 
创建普通用户并授权 grant all on *.* to user1 identified by‘123456‘; 
grant all on db1.* to ‘user2‘@‘10.0.2.100‘ identified by ‘111222‘; 
grant all on db1.* to ‘user3‘@‘%‘ identified by ‘231222‘;
更改密码  update mysql.user set password=password("newpwd") where user=‘username‘ ; flush privileges;
查询  select count(*) frommysql.user; select * from mysql.db; select * from mysql.db where host like‘10.0.%‘; 
插入  update db1.t1 set name=‘aaa‘where id=1;  
清空表  truncate table db1.t1; 
删除表  drop table db1.t1; 
删除数据库  drop database db1; 
修复表  repair table tb1 [use frm];

3.2 备份与恢复:

使用如下命令进行数据库备份:

[[email protected] ~]# mysqldump -uroot -pdbname > db_bak.sql

使用如下命令进行数据库恢复:

[[email protected] ~]# mysql -uroot -p dbname < db_bak.sql

恢复的前提是 dbname 库在数据库中存在,否则需要先创建dbname 库。

除了上面提到的一次将整个数据库备份下来,还可以一次只备份一个数据库中的一张表,使用如下命令:

[[email protected] ~]# mysqldump -uroot -pdbname tabelname > tb_bak.sql

进行数据库恢复时,与备份整个数据库时相同:

[[email protected] ~]# mysql -uroot -p dbname < tb_bak.sql

恢复的前提也是 dbname 库在数据库中存在,而tablename 表不一定要存在。

在默认情况下,这种备份是带有原数据库 / 表中的数据的,如果只想备份表结构,只需要加上 -d 参数:

[[email protected] ~]# mysqldump -uroot -p -ddbname > db_structure_bak.sql

为了避免备份 / 恢复时字符集不同可能导致的乱码,可以在备份 / 恢复时指定字符集,使用 --default-character-set 参数:

[[email protected] ~]# mysqldump -uroot -p--default-character-set=utf-8 dbname > db_bak.sql

[[email protected] ~]# mysql -uroot -p--default-character-set=utf-8 dbname < db_bak.sql

3.3 忘记 MySQL 的密码:

修改 /etc/my.cnf 文件:

[[email protected] ~]# vim /etc/my.cnf

在 [mysqld] 部分内容中添加如下内容:

skip-grant

保存退出,重启 MySQL :

[[email protected] ~]# service mysqld restart

Shutting down MySQL. SUCCESS!

Starting MySQL. SUCCESS!

之后可以直接以无密码状态进入 MySQL :

[[email protected] ~]# mysql -uroot   //等同于 mysql

mysql> use mysql;update user u setu.password=password(‘newpassword’) from user u where u.user=’root’;

Query OK, 3 rows affected (0.00 sec)

Rows matched: 3  Changed: 3 Warnings: 0

之后再次修改 /etc/my.cnf 文件,将添加的skip-grant 选项删除或者注释掉,再次重启 MySQL 即可:

[[email protected] ~]# service mysqld restart

补充:在知道现有密码的情况下,如果想要改为新密码,不需要进入 MySQL 数据库中执行 update语句来重置密码,使用 mysqladmin 命令:

[[email protected] ~]# mysqladmin -uroot -ppassword ‘newpasswd’

时间: 2024-10-18 00:35:58

多学一点(六)——在Linux下安装配置MySQL的相关文章

(转载)Linux下安装配置MySQL+Apache+PHP+WordPress的详细笔记

Linux下安装配置MySQL+Apache+PHP+WordPress的详细笔记 Linux下配LMAP环境,花了我好几天的时间.之前没有配置过,网上的安装资料比较混乱,加上我用的版本问题,安装过程中出现了一些错误,经过好几次安装,翻了好多资料,最后找出问题的所在,才把环境搭建好,对于高手来说,这或许不算什么,但对于一个刚入门的新人,却是不一样了,这篇文章记录着我的一些笔记,希望对于那些刚刚入门的人们有所帮助,仅作为参考. 安装首先我们得获得MySQL,Apache,PHP,WordPress

Linux下安装配置Mysql和Redis

linux下如何安装mysql(mariadb) linux下如何安装软件? 1. yum安装软件也得注意,一个是配置yum源 1.我们当前的是阿里云的yum源(下载速度特别快) 通过yum install mariadb 发现版本如下,版本特别低,且安装包特别小, mariadb x86_64 1:5.5.60-1.el7_5 base 8.9 M 2.我们可以配置mariadb官方的yum源(官方的mariadb包一定是最新的,最好的,功能最全的,但是下载速度可能很慢) 配置官方mariad

Linux下安装配置MySQL服务器

一.安装环境 ============ OS:centos6.8 MySQL:mysql-5.7.16-linux-glibc2.5-x86_64.tar.gz 安装目录:/usr/local/mysql57 用root用户安装. 二.安装步骤 ============ 1.解压安装包 [root]#cd /usr/local [root]#mv  /path/to/mysql-5.7.16-linux-glibc2.5-x86_64.tar.gz  . [root]#tar -xzf mysq

Java学习笔记——Linux下安装配置MySQL

山重水复疑无路,柳暗花明又一村 --游山西村 系统:Ubuntu 16.04LTS 1\官网下载mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz 2\建立工作组:$su#groupadd mysql#useradd -r -g mysql mysql 3\创建目录#mkdir /usr/local/mysql#mkdir /usr/local/mysql/data 4\解压mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz,并拷贝

Linux下安装配置Apache服务器

Linux下安装配置Apache服务器 1. 安装Apache [[email protected] ~]# yum –y install httpd 2. 启动Apache [[email protected] ~]# systemctl start httpd 3. 查看进程 [[email protected] ~]# systemctl status httpd httpd.service - The Apache HTTP Server Loaded: loaded (/usr/lib

linux下安装配置tomcat以及tomcat开机自启配置

Linux下Tomcat安装配置以及Windows不能连接服务器Tomcat解决方案 一.从官方网站上下载tomcat软件包. 官网地址: http://tomcat.apache.org/ 点击左侧的 download的一个版本,我选择的是 tomcat7.0,选择一个后缀名为.tar.gz文件直接下载到本地. 二.通过工具SSH Secure 上传至linux服务器中,进行解压 解压tomcat压缩文件: #tar zxvf apache-tomcat-7.0.53.tar.gz 将解压后的

Linux下安装配置Nexus

一.安装和运行nexus 1.下载nexus:http://www.sonatype.org/nexus/go 可选择tgz和zip格式,以及war,选择tgz或zip时不同版本可能在启动时存在一定问题,可能是因为jdk版本问题,若无法启动请选择2.5或更早的版本 注:nexus 2.6版本之后不再支持jdk1.6 2.安装nexus 若下载war,则将其放置tomcat下的webapp目录中,改名为nexus,运行tomcat服务,即可访问http://localhost:8081/nexus

在linux下安装配置Initiator

在linux下安装和配置Initiator 环境 : 开启虚拟机,安装有linux操作系统. 首先打开linux操作系统,进入后使用命令ifconfig –a查看ip地址 在windows下安装安装有SecureCRT 7.1软件或者putty来进行远程控制     在linux下安装Initiator [[email protected] ~]# mkdir -p /mnt/cdron 创建目录并将光盘挂载到/mnt/cdrom目录下 [[email protected] ~]# mount

linux 下安装配置jboss as7以及部署应用

linux 下安装配置jboss as7以及部署应用 1.测试平台及软件 centos 5.4 jdk-7u5-linux-i586.rpm jboss-as-7.1.1.Final.zip jboss-as-quickstarts-7.1.1.CR2-dist.zip apache-maven-3.0.4-bin.tar.gz 2.安装相关软件 a.安装jdk [[email protected] ~]# chmod +x jdk-7u5-linux-i586.rpm [[email prot