MySQL安装部署
二进制部署
下载 https://downloads.mysql.com/archives/community/ #二进制安装MySQL-5.6.39 1.添加用户 useradd -s /sbin/nologin -M mysql 2.解压 mysql 二进制包 cd /home/lewen/tools tar xf mysql-5.6.39-*-x86_64.tar.gz 3.把MySQL 移动到 /application/ mkdir -p /application/ mv /home/lewen/tools/mysql-5.6.39-*-x86_64 /application/mysql-5.6.394.创建软连接 ln -s /application/mysql-5.6.39/ /application/mysql 5.让MySQL用户管理 /application/mysql chown -R mysql.mysql /application/mysql/data 6.初始化数据库/application/mysql/scripts/mysql_install_db --basedir=/application/mysql --datadir=/application/mysql/data --user=mysql ##mysql启动脚本 默认放在support-files/mysql.server ##记得给MySQL设置个密码 ## /application/mysql/bin/mysqladmin -u root password 'new-password' ## /application/mysql/bin/mysqladmin -u root -h web01 password 'new-password'7.复制启动脚本 授权 cp /application/mysql/support-files/mysql.server /etc/init.d/mysqld chmod +x /etc/init.d/mysqld 8.修改启动脚本 和 mysql命令中的路径 sed -i 's#/usr/local/mysql#/application/mysql#g' /application/mysql/bin/mysqld_safe /etc/init.d/mysqld 9.复制 默认的配置文件 \cp /application/mysql/support-files/my-default.cnf /etc/my.cnf /etc/init.d/mysqld start 10.PATH路径 echo 'export PATH=/application/mysql/bin:$PATH' >>/etc/profile source /etc/profile which mysql 11.加入开机自启动 chkconfig --add mysqld chkconfig mysqld on 12.给MySQL root用户设置密码 /application/mysql/bin/mysqladmin -u root password 'oldboy123'13.重新登录MySQL数据库 mysql -uroot -poldboy123
故障
#1./tmp权限
#2.主机名解析 hosts解析 #ping 主机名
安装报错解决
(1)
Installing MySQL system tables.../application/mysql/bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
原因:缺少libaio库文件
解决方法:yum install libaio* numactl -y
(2)
Installing MySQL system tables.../application/mysql/bin/mysqld: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No such file or directory
如果安装mysql出现了以上的报错信息.这是却少numactl这个时候如果是Centos就yum -y install numactl就可以解决这个问题了.
SQL基本语句
#mysql SQL语句 #查看系统中所有数据库 #show databases; #查看系统中所有的用户 #使用某一个数据库 mysql> #查看当前都有啥 mysql> show databases; ******** +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | test | +--------------------+ 4 rows in set (0.07 sec) # 查看系列-开始 ##使用某一个数据库 相当于进入 mysql 数据库中 cd mysql ; cd test #use mysql ##我想查看当前在哪? pwd 当前正在使用哪个数据库 select database(); +------------+ | database() | +------------+ | mysql | +------------+ 1 row in set (0.00 sec) ##我是谁? 查看当前用户 select user(); +----------------+ | user() | +----------------+ | root@localhost | +----------------+ 1 row in set (0.00 sec) 当前系统都有什么用户? 他们可以在哪里登录? ***** select user,host from mysql.user; +------+-----------+ | user | host | +------+-----------+ | root | 127.0.0.1 | | root | ::1 | | | localhost | | root | localhost | | | web01 | | root | web01 | +------+-----------+ 6 rows in set (0.02 sec) # 添加删除系列 #创建数据库 create database wordpress; #删除数据库 drop database wordpress; #添加用户 grant all on wordpress.* to 'wordpress'@'172.16.1.0/255.255.255.0' identified by '123456'; #授权所有的权限, wordpress数据库所有的权限 给 wordpress用户 可以在172.16.1.0/255.255.255.0 网段登录数据库 这个用户的密码123456; #更新系统的权限表 flush privileges; 进行测试 mysql -uwordpress -p123456 mysql -uwordpress -p -h 172.16.1.8 #删除用户 drop user wordpress@'172.16.1.8'; --- #help sql语句。 #跳过授权表(不用密码登录) #/etc/init.d/mysqld restart --skip-grant-table #mysql 命令行 #-u 指定用户 #-p 指定密码(不要有空格) #-h 连接到某一台服务器
#更改密码 mysqladmin -uroot -poldboy123 password '新的密码'