【数据库】一篇文章搞掂:MySQL数据库
一、安装
使用版本:5.7(2018/08/03 阿里云的云数据库最高支持5.7,所以这里考虑用5.7)
下载版本:MySQL Community Server 5.7.23
下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads
下载格式:ZIP压缩包
1.1、压缩包版本在Windows系统下的安装步骤
1.1.1、解压到一个文件夹
如:C:\Softs\mysql-5.7.23-winx64
1.1.2、配置环境变量
变量名:MYSQL_HOME
变量值:C:\Softs\mysql-5.7.23-winx64
path里添加:%MYSQL_HOME%\bin;
以管理员身份运行cmd,执行mysql -V查看版本成功,代表配置成功
1.1.3、配置MySQL实例配置文件(这部可以跳过,则会使用默认设置)
默认设置MySQL使用端口号为3306,这里设置使用3308
在解压目录下,新建一个ini文件,名为my.ini,一个例子内容如下
[mysqld] basedir = C:\Softs\mysql-5.7.23-winx64 datadir = C:\Softs\mysql-5.7.23-winx64\data port = 3308 # Remove leading # and set to the amount of RAM for the most important data # cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%. innodb_buffer_pool_size = 128M # Remove leading # to turn on a very important data integrity option: logging # changes to the binary log between backups. # log_bin # These are commonly set, remove the # and set as required. #鑷畾涔変富鏈篒D璇嗗埆绗︼紝鐢ㄤ簬涓讳粠鎴栧鏈嶅姟鍣ㄤ箣闂磋瘑鍒紝涓?涓€涓?int 绫诲瀷 server_id = 1 character_set_server=utf8 # 鏈€澶ц繛鎺ユ暟閲? max_connections = 100 #CREATE TABLE 璇彞鐨勯粯璁よ〃绫诲瀷锛屽鏋滀笉鑷繁鎸囧畾绫诲瀷锛屽垯浣跨敤涓嬭鐨勭被鍨? default-storage-engine = InnoDB # Remove leading # to set options mainly useful for reporting servers. # The server defaults are faster for transactions and fast SELECTs. # Adjust sizes as needed, experiment to find the optimal values. join_buffer_size = 128M sort_buffer_size = 2M read_rnd_buffer_size = 2M sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES #开启查询缓存 explicit_defaults_for_timestamp=true explicit_defaults_for_timestamp=true
1.1.4、安装MySQL服务
以管理员身份运行cmd
执行命令:mysqld --install MySQL3308
MySQL3308为服务名,可以自定义
1.1.3、生成data文件
以管理员身份运行cmd
执行命令:mysqld --initialize-insecure --user=mysql 在解压的MySQL目录下生成了data目录
1.1.5、启动服务
执行命令:net start MySQLLT
启动名为MySQLLT的服务
到此安装完成,可以使用cmd程序进行访问,或者通过其他访问软件进行访问。
二、实例
2.1、创建一个新的数据库,并指定给某个用户
登录:mysql -P 3308 -u 用户名 -p 密码
创建数据库:create database 数据库名 DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
授予用户通过外网IP对于该数据库的全部权限:grant all privileges on `数据库名`.* to '用户名'@'%' identified by '密码';
刷新权限:flush privileges;