[root@master ~]# yum -y install gcc gcc-c++ make autoconf libtool-ltdl-devel gd-devel freetype-devel libxml2-devel libjpeg-devel libpng-devel openssl-devel curl-devel bison patch unzip libmcrypt-devel libmhash-devel ncurses-devel sudo bzip2 flex libaio libaio-devel
[root@master ~]# tar -xf cmake-2.8.11.2.tar.gz
[root@master ~]# cd cmake-2.8.11.2/
[root@master ~]# ./configure
[root@master ~]# make && make install
[root@master ~]# id mysql
[root@master ~]# tar -xf mysql-5.6.19.tar.gz -C /usr/local/
[root@master ~]# cd /usr/local/mysql-5.6.19/
[root@master mysql-5.6.19]# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/var -DSYSCONFDIR=/etc
[root@master mysql-5.6.19]# make && make install
[root@master mysql-5.6.19]# mkdir -p /usr/local/mysql/var
[root@master mysql-5.6.19]# chown -Rf mysql:mysql /usr/local/mysql
[root@master mysql-5.6.19]# cd /usr/local/mysql
[root@master mysql]# ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/var
[root@master mysql]# cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
[root@master mysql]# chmod +x /etc/rc.d/init.d/mysqld
[root@master mysql]# vim /etc/rc.d/init.d/mysqld
[root@master mysql]# /etc/rc.d/init.d/mysqld start
Starting MySQL..... SUCCESS!
[root@master mysql]# vim /etc/profile
[root@master mysql]# source /etc/profile
[root@master mysql]# ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql
[root@master mysql]# ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock
[root@master mysql]# ln -s /usr/local/mysql/include/mysql /usr/include/mysql
初始化MySQL数据库
[root@master mysql]# mysql_secure_installation
重启MySQL数据库
[root@master ~]# service mysqld restart
Shutting down MySQL.. SUCCESS!
Starting MySQL.. SUCCESS!
登录MySQL数据库
[root@master ~]# mysql -uroot -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.6.19-log Source distribution
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
查看master数据库当前正在使用的二进制日志及当前执行二进制日志位置
MySQL [(none)]> show master status;
+------------------+----------+--------------+------------------+-------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000005 | 120 | | | |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.03 sec)
查看数据库
MySQL [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| mysql_chd |
| performance_schema |
+--------------------+
4 rows in set (0.13 sec)
退出数据库
MySQL [(none)]> quit
Bye
[root@master ~]#
***************************************************************************************************
MySQL配置文件(my.ini)详解
innodb_additional_mem_pool_size:表示附加的内存池,用来存储InnoDB表的内容。
innodb_flush_log_at_trx_commit:是设置提交日志的时机,若设置为1,InnoDB 会在每次提交后将事务日志写到磁盘上。
innodb_log_buffer_size:表示用来存储日志数据的缓存区的大小。
innodb_buffer_pool_size:表示缓存的大小,InnoDB 使用一个缓冲池类保存索引和原始数据。
innodb_log_file_size:表示日志文件的大小。
innodb_thread_concurrency:表示在 InnoDB 存储引擎允许的线程最大数。
注意:每次修改 my.ini 文件中的参数后,必须重新启动 MySQL 服务才会有效。
SQL 包含以下 4 部分:
(1)数据定义语言(Data Definition Language,DDL)
用来创建或删除数据库以及表等对象,主要包含以下几种命令:
DROP:删除数据库和表等对象
CREATE:创建数据库和表等对象
ALTER:修改数据库和表等对象的结构
(2)数据操作语言(Data Manipulation Language,DML)
用来变更表中的记录,主要包含以下几种命令:
SELECT:查询表中的数据
INSERT:向表中插入新数据
UPDATE:更新表中的数据
DELETE:删除表中的数据
(3)数据查询语言(Data Query Language,DQL)
用来查询表中的记录,主要包含 SELECT 命令,来查询表中的数据。
(4)数据控制语言(Data Control Language,DCL)
用来确认或者取消对数据库中的数据进行的变更。除此之外,还可以对数据库中的用户设定权限。主要包含以下几种命令:
GRANT:赋予用户操作权限
REVOKE:取消用户的操作权限
COMMIT:确认对数据库中的数据进行的变更
ROLLBACK:取消对数据库中的数据进行的变更
例子:SQL语句创建一个students表
该表包含4个字段,分别为student_id、name、sex、bith,其中student_id定义为表的主键。
CREATE TABLE students (
student_id INT UNSIGNED,
name VARCHAR(30),
sex CHAR(1),
birth DATE,
PRIMARY KEY(student_id)
);