mysql二进制安装及基础操作
环境说明:
系统版本 CentOS 6.9 x86_64
软件版本 mysql-5.6.36-linux-glibc2.5-x86_64
1、安装
采用二进制方式安装(绿色版,解压就能用)
- [root@db01 ~]# mkdir -p /service/tools #创建目录
- [root@db01 tools]# mkdir /application
- [root@db01 ~]# cd /service/tools/
- wget -c 断点续传
- [root@db01 tools]# wget -c http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz #下载二进制包
- [root@db01 tools]# tar xf mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz #解压
- [root@db01 tools]# mv mysql-5.6.36-linux-glibc2.5-x86_64 /application/mysql5.6.36 #移动
- [root@db01 tools]# ln -s /application/mysql5.6.36 /application/mysql #创建软链接
- [root@db01 tools]# ll /application/
- [root@db01 tools]# useradd -M -s /sbin/nologin -r -u 90 mysql #创建mysql用户
2、初始化mysql数据库实例
- [root@db01 tools]# cd /application/mysql/
- [root@db01 mysql]# ls
- [root@db01 mysql]# ./scripts/mysql_install_db --help
- [root@db01 mysql]#
- ./scripts/mysql_install_db --user=mysql --basedir=/application/mysql --datadir=/application/mysql/data
- #脚本实例化
- [root@db01 mysql]# ls /application/mysql/data/
- ibdata1 ib_logfile0 ib_logfile1 mysql performance_schema test
成功后有两个OK,实例化需要用到tmp目录,若tmp目录权限不是1777,则无法实例化,恢复继续实例化需要先执行命令删除rm -rf /application/mysql/data实例化产生的目录
Centos7在实例化时若报错
FATAL ERROR: please install the following Perl modules before executing /usr/local/mysql/scripts/mysql_install_db:
Data::Dumper
解决方法
yum-y install autoconf
3、配置
- [root@db01 mysql]# file support-files/mysql.server #查看文件类型
- support-files/mysql.server: POSIX shell script text executable
- [root@db01 mysql]# cp support-files/mysql.server /etc/init.d/mysqld #拷贝启动脚本到/etc/init.d目录,便于启动
- 和47行指定basedir和datadir
- basedir=/application/mysql
- datadir=/application/mysql/data
- [root@db01 mysql]# \cp support-files/my-default.cnf /etc/my.cnf #拷贝配置文件
4、启动
- [root@db01 mysql]# /etc/init.d/mysqld start #启动
- Starting MySQL.Logging to '/application/mysql/data/db01.err'.
- ... SUCCESS!
- [root@db01 mysql]# netstat -lntup|grep 3306 #3306端口
- tcp 0 0 :::3306 :::* LISTEN 2197/mysql
- [root@db01 mysql]# ps -ef|grep mysql
- root 2090 1 0 15:04 pts/0 00:00:00 /bin/sh /application/mysql/bin/mysqld_safe --datadir=/application/mysql/data --pid-file=/application/mysql/data/db01.pid
- mysql 2197 2090 0 15:04 pts/0 00:00:01 /application/mysql/bin/mysqld --basedir=/application/mysql --datadir=/application/mysql/data --plugin-dir=/application/mysql/lib/plugin --user=mysql --log-error=/application/mysql/data/db01.err --pid-file=/application/mysql/data/db01.pid
- root 2244 1668 0 15:20 pts/0 00:00:00 grep mysql
5、mysql的基础操作
- [root@db01 mysql]# ln -s /application/mysql/bin/* /usr/bin/ #创建命令软链接
- [root@db01 mysql]# mysql_secure_installation mysql去安全隐患
5.1 登录并退出
- mysql 登录
- exit或quit 退出
5.2 密码不为空登录mysql
- [root@db01 mysql]# mysql -uroot -p123456
- 或
- [root@db01 mysql]# mysql -uroot -p 根据提示再输入密码
5.3 修改mysql的root密码
- 当密码为空(第一次使用)
- [root@db01 mysql]# mysqladmin -uroot password '123456'
- Warning: Using a password on the command line interface can be insecure.
- 提示在命令行的明文密码不安全,可以通过history -d+历史命令序号来删除历史记录
- 当密码不为空
- [root@db01 mysql]# mysqladmin -uroot -p password '123456'
- Enter password: #输入原密码回车
5.4 查看数据库
- mysql> show databases;
5.5 进入(切换)数据库
- mysql> use mysql; #切换到mysql数据库
- 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
5.6 查看有哪些表
- mysql> use mysql;
- mysql> show tables;
5.7 创建数据库
- mysql> create database test1;
- Query OK, 1 row affected (0.03 sec)
5.8 数据库授权
- ,限制登录地址
- mysql> grant all on test1.* to test2@'localhost' identified by '123456';
- mysql> grant all on *.* to root@'localhost' identified by '123456'; #授权所有库给root
5.9 删除数据库
- mysql> drop database test;
5.10 备份数据库
- mysqldump -uroot-p123456 mydb> mydb.sql 备份一个数据库
- mysqldump -uroot -p123456 -A >back_bak.sql -A 备份所有数据库,blog_bak.sql为指定的备份库名称
- mysqldump -uroot -p123456 -B blog >blog_bak.sql -B用于备份一个或多个多个数据库
5.11 还原数据库
- mysql -uroot -p123456 <blog_bak.sql
博主原创文章,转载请务必注明出处