MySQL安装操作指引
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL安装操作指引相关的知识,希望对你有一定的参考价值。
mysql安装操作指引
以下所有操作为centos6.7环境
一、下载MySQL数据库安装包
MySQL官方网站:https://dev.mysql.com/downloads/mysql/
下载安装包:mysql-5.6.41-linux-glibc2.12-x86_64.tar.gz
二、创建mysql用户组及mysql用户帐号
[[email protected] ~]# groupadd mysql #创建mysql用户组 [[email protected] ~]# useradd mysql -s /sbin/nologin -g mysql -M #建mysql用户不可登陆不建家目录 [[email protected] ~]# [[email protected] ~]# tail -1 /etc/group #查看是否创建成功 mysql:x:502: [[email protected] ~]#
三、mysql安装过程
[[email protected] ~]# cd /usr/local/ #进入/usr/local/目录 [[email protected] local]# ll -rw-r--r--. 1 root root 328530942 7月 31 04:28 mysql-5.6.41-linux-glibc2.12-x86_64.tar.gz
#解压mysql安装包
[[email protected] local]# tar zxf mysql-5.6.41-linux-glibc2.12-x86_64.tar.gz #解压mysql安装包 [[email protected] local]# ll drwxr-xr-x. 13 root root 4096 7月 31 04:29 mysql-5.6.41-linux-glibc2.12-x86_64 -rw-r--r--. 1 root root 328530942 7月 31 04:28 mysql-5.6.41-linux-glibc2.12-x86_64.tar.gz
#更改解压后的目录名为mysql
[[email protected] local]# mv mysql-5.6.41-linux-glibc2.12-x86_64 mysql #更改解压后的目录名为mysql [[email protected] local]# ll drwxr-xr-x. 13 root root 4096 7月 31 04:29 mysql -rw-r--r--. 1 root root 328530942 7月 31 04:28 mysql-5.6.41-linux-glibc2.12-x86_64.tar.gz
#授权/usr/local/属组给mysql帐号
[[email protected] mysql]# chown -R mysql:mysql /usr/local/ #授权/usr/local/属组给mysql帐号 [[email protected] mysql]# [[email protected] mysql]# cd /usr/local/mysql #进入/usr/local/mysql目录
#创建my.cnf文件及编辑,重点
[[email protected] mysql]# vim my.cnf #创建my.cnf文件及编辑 [client] default-character-set=utf8 socket=/tmp/mysql.sock [mysql] default-character-set=utf8 [mysqld] socket=/tmp/mysql.sock tmpdir=/usr/local/mysql/tmp/ basedir=/usr/local/mysql datadir=/usr/local/mysql/data symbolic-links=0 character_set_server=utf8 [mysqld_safe] default-character-set=utf8 log-error=/usr/local/mysql/logs/mysqld.log pid-file=/usr/local/mysql/run/mysqld/mysqld.pid [[email protected] mysql]#
[[email protected] mysql]# cat my.cnf #查看my.cnf编辑后的内容,重点 [client] default-character-set=utf8 socket=/tmp/mysql.sock [mysql] default-character-set=utf8 [mysqld] socket=/tmp/mysql.sock tmpdir=/usr/local/mysql/tmp/ basedir=/usr/local/mysql datadir=/usr/local/mysql/data symbolic-links=0 character_set_server=utf8 [mysqld_safe] default-character-set=utf8 log-error=/usr/local/mysql/logs/mysqld.log pid-file=/usr/local/mysql/run/mysqld/mysqld.pid [[email protected] mysql]#
#在mysql目录下创建相关目录
[[email protected] mysql]# cd /usr/local/mysql #进入/usr/local/mysql目录 [[email protected] mysql]# mkdir tmp #在mysql目录下创建tmp目录 [[email protected] mysql]# mkdir logs #在mysql目录下创建logs目录 [[email protected] mysql]# mkdir -p run/mysqld #在mysql目录下创建run/mysqld目录 [[email protected] mysql]# chown -R mysql:mysql /usr/local/ #授权/usr/local/属组给mysql帐号
#安装mysql数据库
[[email protected] mysql]# scripts/mysql_install_db --user=mysql --defaults-file=/usr/local/mysql/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/ #安装mysql数据库 WARNING: The host 'CentOS-A-server' could not be looked up with /usr/local/mysql/bin/resolveip. This probably means that your libc libraries are not 100 % compatible with this binary MySQL version. The MySQL daemon, mysqld, should work normally with the exception that host name resolving will not work. This means that you should use IP addresses instead of hostnames when specifying MySQL privileges ! Installing MySQL system tables...2018-07-31 04:41:20 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). 2018-07-31 04:41:20 0 [Note] Ignoring --secure-file-priv value as server is running with --bootstrap. 2018-07-31 04:41:20 0 [Note] /usr/local/mysql/bin/mysqld (mysqld 5.6.41) starting as process 6836 ... 2018-07-31 04:41:20 6836 [Note] InnoDB: Using atomics to ref count buffer pool pages 2018-07-31 04:41:20 6836 [Note] InnoDB: The InnoDB memory heap is disabled 2018-07-31 04:41:20 6836 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins 2018-07-31 04:41:20 6836 [Note] InnoDB: Memory barrier is not used 2018-07-31 04:41:20 6836 [Note] InnoDB: Compressed tables use zlib 1.2.3 2018-07-31 04:41:20 6836 [Note] InnoDB: Using Linux native AIO 2018-07-31 04:41:20 6836 [Note] InnoDB: Using CPU crc32 instructions 2018-07-31 04:41:20 6836 [Note] InnoDB: Initializing buffer pool, size = 128.0M 2018-07-31 04:41:20 6836 [Note] InnoDB: Completed initialization of buffer pool 2018-07-31 04:41:20 6836 [Note] InnoDB: The first specified data file ./ibdata1 did not exist: a new database to be created! 2018-07-31 04:41:20 6836 [Note] InnoDB: Setting file ./ibdata1 size to 12 MB 2018-07-31 04:41:20 6836 [Note] InnoDB: Database physically writes the file full: wait... 2018-07-31 04:41:21 6836 [Note] InnoDB: Setting log file ./ib_logfile101 size to 48 MB 2018-07-31 04:41:22 6836 [Note] InnoDB: Setting log file ./ib_logfile1 size to 48 MB 2018-07-31 04:41:22 6836 [Note] InnoDB: Renaming log file ./ib_logfile101 to ./ib_logfile0 2018-07-31 04:41:22 6836 [Warning] InnoDB: New log files created, LSN=45781 2018-07-31 04:41:22 6836 [Note] InnoDB: Doublewrite buffer not found: creating new 2018-07-31 04:41:22 6836 [Note] InnoDB: Doublewrite buffer created 2018-07-31 04:41:22 6836 [Note] InnoDB: 128 rollback segment(s) are active. 2018-07-31 04:41:22 6836 [Warning] InnoDB: Creating foreign key constraint system tables. 2018-07-31 04:41:23 6836 [Note] InnoDB: Foreign key constraint system tables created 2018-07-31 04:41:23 6836 [Note] InnoDB: Creating tablespace and datafile system tables. 2018-07-31 04:41:23 6836 [Note] InnoDB: Tablespace and datafile system tables created. 2018-07-31 04:41:23 6836 [Note] InnoDB: Waiting for purge to start 2018-07-31 04:41:23 6836 [Note] InnoDB: 5.6.41 started; log sequence number 0 2018-07-31 04:41:24 6836 [Note] Binlog end 2018-07-31 04:41:24 6836 [Note] InnoDB: FTS optimize thread exiting. 2018-07-31 04:41:24 6836 [Note] InnoDB: Starting shutdown... 2018-07-31 04:41:26 6836 [Note] InnoDB: Shutdown completed; log sequence number 1625977 OK Filling help tables...2018-07-31 04:41:26 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). 2018-07-31 04:41:26 0 [Note] Ignoring --secure-file-priv value as server is running with --bootstrap. 2018-07-31 04:41:26 0 [Note] /usr/local/mysql/bin/mysqld (mysqld 5.6.41) starting as process 6858 ... 2018-07-31 04:41:26 6858 [Note] InnoDB: Using atomics to ref count buffer pool pages 2018-07-31 04:41:26 6858 [Note] InnoDB: The InnoDB memory heap is disabled 2018-07-31 04:41:26 6858 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins 2018-07-31 04:41:26 6858 [Note] InnoDB: Memory barrier is not used 2018-07-31 04:41:26 6858 [Note] InnoDB: Compressed tables use zlib 1.2.3 2018-07-31 04:41:26 6858 [Note] InnoDB: Using Linux native AIO 2018-07-31 04:41:26 6858 [Note] InnoDB: Using CPU crc32 instructions 2018-07-31 04:41:26 6858 [Note] InnoDB: Initializing buffer pool, size = 128.0M 2018-07-31 04:41:26 6858 [Note] InnoDB: Completed initialization of buffer pool 2018-07-31 04:41:26 6858 [Note] InnoDB: Highest supported file format is Barracuda. 2018-07-31 04:41:26 6858 [Note] InnoDB: 128 rollback segment(s) are active. 2018-07-31 04:41:26 6858 [Note] InnoDB: Waiting for purge to start 2018-07-31 04:41:26 6858 [Note] InnoDB: 5.6.41 started; log sequence number 1625977 2018-07-31 04:41:27 6858 [Note] Binlog end 2018-07-31 04:41:27 6858 [Note] InnoDB: FTS optimize thread exiting. 2018-07-31 04:41:27 6858 [Note] InnoDB: Starting shutdown... 2018-07-31 04:41:28 6858 [Note] InnoDB: Shutdown completed; log sequence number 1625987 OK To start mysqld at boot time you have to copy support-files/mysql.server to the right place for your system PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER ! To do so, start the server, then issue the following commands: /usr/local/mysql/bin/mysqladmin -u root password 'new-password' /usr/local/mysql/bin/mysqladmin -u root -h CentOS-A-server password 'new-password' Alternatively you can run: /usr/local/mysql/bin/mysql_secure_installation which will also give you the option of removing the test databases and anonymous user created by default. This is strongly recommended for production servers. See the manual for more instructions. You can start the MySQL daemon with: cd . ; /usr/local/mysql/bin/mysqld_safe & You can test the MySQL daemon with mysql-test-run.pl cd mysql-test ; perl mysql-test-run.pl Please report any problems at http://bugs.mysql.com/ The latest information about MySQL is available on the web at http://www.mysql.com Support MySQL by buying support/licenses at http://shop.mysql.com WARNING: Found existing config file /usr/local/mysql/my.cnf on the system. Because this file might be in use, it was not replaced, but was used in bootstrap (unless you used --defaults-file) and when you later start the server. The new default config file was created as /usr/local/mysql/my-new.cnf, please compare it with your file and take the changes you need.
#查找mysql服务
[[email protected] mysql]# find / -name mysql.server #查找mysql服务 /usr/local/mysql/support-files/mysql.server [[email protected] mysql]#
#启动mysql数据库
[[email protected] mysql]# /usr/local/mysql/support-files/mysql.server start #启动mysql数据库 Starting MySQL.180731 04:43:03 mysqld_safe error: log-error set to '/usr/local/mysql/logs/mysqld.log', however file don't exists. Create writable for user 'mysql'. The server quit without updating PID file (/usr/local/mysql[失败]CentOS-A-server.pid). #报错没有以上文件 [[email protected] mysql]#
#创建以上报错没有的文件
[[email protected] mysql]# touch /usr/local/mysql/logs/mysqld.log #创建以上报错没有的文件 [[email protected] mysql]# ll /usr/local/mysql/logs/mysqld.log #查看是否已创建成功 -rw-r--r--. 1 root root 0 7月 31 04:51 /usr/local/mysql/logs/mysqld.log [[email protected] mysql]#
#授权属组给mysql帐号
[[email protected] mysql]# chown -R mysql:mysql /usr/local/mysql/logs/mysqld.log #授权属组给mysql帐号 [[email protected] mysql]# [[email protected] mysql]# ll /usr/local/mysql/logs/mysqld.log #查看授权属组是否成功 -rw-r--r--. 1 mysql mysql 0 7月 31 04:51 /usr/local/mysql/logs/mysqld.log [[email protected] mysql]#
#启动mysql数据库
[[email protected] mysql]# find / -name mysql.server #查找mysql服务 /usr/local/mysql/support-files/mysql.server [[email protected] mysql]# [[email protected] mysql]# /usr/local/mysql/support-files/mysql.server start #启动mysql数据库 Starting MySQL.............................................[确定].................................... #启动成功 [[email protected] mysql]#
#查找确认mysql进程是否启动成功
[[email protected] mysql]# ps -ef | grep mysql #查找确认mysql进程是否启动成功 root 7260 1 0 04:52 pts/0 00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/CentOS-A-server.pid mysql 7458 7260 77 04:52 pts/0 00:01:52 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/usr/local/mysql/logs/mysqld.log --pid-file=/usr/local/mysql/data/CentOS-A-server.pid --socket=/tmp/mysql.sock root 7663 6692 0 04:55 pts/0 00:00:00 grep mysql [[email protected] mysql]# [[email protected] mysql]# cd /usr/local/mysql/bin/ #进入/usr/local/mysql/bin/目录 [[email protected] bin]#
登陆MYSQL格式:
---------------------------------------------------------------------------------------------------------------------------
连接MYSQL: 格式: mysql -h主机地址 -u用户名 -p用户密码 1、例1:连接到本机上的MYSQL 找到mysql的安装目录,一般可以直接键入命令./mysql -h127.0.0.1 -uroot -p,回车后提示你输密码,如果刚安装好MYSQL,超级用户root是没有密码的
---------------------------------------------------------------------------------------------------------------------------
#登陆mysql数据库,新建帐号没设置密码,可直接回车键登陆
[[email protected] bin]# ./mysql -h127.0.0.1 -uroot -p #登陆mysql数据库 Enter password: #直接回车键进入 Welcome to the MySQL monitor. Commands end with ; or g. Your MySQL connection id is 1 Server version: 5.6.41 MySQL Community Server (GPL) Copyright (c) 2000, 2018, 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> 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
#查看mysql用户
mysql> select host,user from mysql.user; #查看mysql用户 +-----------------+------+ | host | user | +-----------------+------+ | 127.0.0.1 | root | | ::1 | root | | centos-a-server | | | centos-a-server | root | | localhost | | | localhost | root | +-----------------+------+ 6 rows in set (0.06 sec
#退出mysql数据库
mysql> quit #退出mysql数据库 Bye [[email protected] bin]#
#找不到mysql命名
[[email protected] ~]#mysql -h127.0.0.1 -uroot –p #若不是在/usr/local/mysql/bin/执行会报错
-bash: mysql: command not found #找不到mysql命名
原因:这是由于系统默认会查找/usr/bin下的命令,如果这个命令不在这个目录下,当然会找不到命令,我们需要做的就是映射一个链接到/usr/bin目录下,相当于建立一个链接文件。
首先得知道mysql命令或mysqladmin命令的完整路径,比如mysql的路径是:/usr/local/mysql/bin/mysql,我们则可以这样执行命令:
# ln -s /usr/local/mysql/bin/mysql /usr/bin
#做软链接
[[email protected] bin]# ln -s /usr/local/mysql/bin/mysql /usr/bin #做软链接 [[email protected] bin]# [[email protected] bin]# mysql -h127.0.0.1 -uroot –p #登陆mysql数据库 Enter password: Welcome to the MySQL monitor. Commands end with ; or g. Your MySQL connection id is 2 Server version: 5.6.41 MySQL Community Server (GPL) Copyright (c) 2000, 2018, 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> use 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 mysql> select host,user from mysql.user; +-----------------+------+ | host | user | +-----------------+------+ | 127.0.0.1 | root | | ::1 | root | | centos-a-server | | | centos-a-server | root | | localhost | | | localhost | root | +-----------------+------+ 6 rows in set (0.00 sec) mysql> mysql> quit Bye [[email protected] bin]#
四、创建mysql密码
[[email protected] extra]# mysql Welcome to the MySQL monitor. Commands end with ; or g. Your MySQL connection id is 3 Server version: 5.6.41 MySQL Community Server (GPL) Copyright (c) 2000, 2018, 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> set password =password('ouxuetong'); #创建mysql密码 Query OK, 0 rows affected (0.00 sec) mysql> flush privileges; #使其生效 Query OK, 0 rows affected (0.00 sec) mysql>
五、查看基本数据库列表信息
创建用户:
mysql> create user 'usrabc'@'%' identified by 'usrabc'; #创建用户: Query OK, 0 rows affected (0.00 sec) mysql> select host,user from mysql.user; +------------+--------+ | host | user | +------------+--------+ | % | usrabc | | 127.0.0.1 | root | | ::1 | root | | localhost | | | localhost | root | | server.gao | | | server.gao | root | +------------+--------+ 7 rows in set (0.00 sec) mysql>
查看数据库列表:
mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | test | +--------------------+ 4 rows in set (0.00 sec) mysql> mysql> quit Bye [[email protected] bin]#
安装整个过程已完成!
以上是关于MySQL安装操作指引的主要内容,如果未能解决你的问题,请参考以下文章
CentOS 6.x 下安装Zabbix Agent 3.2.x 操作指引
适合菜鸟的:liunx centos7.0 最小化安装后设置手动静态IP操作指引教程
Android 插件化VirtualApp 源码分析 ( 目前的 API 现状 | 安装应用源码分析 | 安装按钮执行的操作 | 返回到 HomeActivity 执行的操作 )(代码片段